Document Type
Conference Proceeding
Publication Date
11-14-2022
Publication Title
EduHPC-22: Workshop on Education for High-Performance Computing
Pages
1-10
Publisher Name
IEEE
Publisher Location
Dallas TX
Abstract
oneAPI is a major initiative by Intel aimed at making it easier to program heterogeneous architectures used in high-performance computing using a unified application programming interface (API). While raising the abstraction level via a unified API represents a promising step for the current generation of students and practitioners to embrace high- performance computing, we argue that a curriculum of well- developed software engineering methods and well-crafted exem- plars will be necessary to ensure interest by this audience and those who teach them. We aim to bridge the gap by developing a curriculum—codenamed UnoAPI—that takes a more holistic approach by looking beyond language and framework to include the broader development ecosystem, similar to the experience found in popular HPC languages such as Python. We hope to make parallel programming a more attractive option by making it look more like general application development in modern languages being used by most students and educators today. Our curriculum emanates from the perspective of well-crafted exemplars from the foundations of computer systems—given that most HPC architectures of interest begin from the systems tradition—with an integrated treatment of essential principles of distributed systems, programming languages, and software engineering. We argue that a curriculum should cover the essence of these topics to attract students to HPC and enable them to confidently solve computational problems using oneAPI. By the time of this submission, we have shared our materials with a small group of undergraduate sophomores, and their responses have been encouraging in terms of self-reported comprehension and ability to reproduce the compilation and execution of exemplars on their personal systems. We plan a follow-up study with a larger cohort by incorporating some of our materials in our existing course on High-Performance Computing.
Recommended Citation
Konstantin Läufer and George K. Thiruvathukal, UnoAPI: Balancing Performance, Portability, and Productivity (P3) in HPC Education, In Proceedings of EduHPC 2022: Workshop on Education for High-Performance Computing 2022 (SC22), 2022.
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Copyright Statement
© IEEE, 2022.
Previous Versions
Included in
Numerical Analysis and Scientific Computing Commons, Programming Languages and Compilers Commons, Software Engineering Commons, Systems Architecture Commons
Comments
Author Posting © 2022 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works. The definitive version was published in the Proceedings of EduHPC 2022: Workshop on Education for High-Performance Computing, November 2022. https://doi.org/10.1109/EduHPC56719.2022.00006