Workshop: EduHPC-22: Workshop on Education for High Performance Computing
Authors: Konstantin Läufer and George K. Thiruvathukal (Loyola University, Chicago)
Abstract: oneAPI is a major initiative by Intel aimed at making it easier to program heterogeneous architectures for high-performance computing using a unified API. In addition to raising the abstraction level via an API, we argue that a curriculum of well-developed software engineering methods with exemplars will be necessary to ensure interest in HPC by current students and educators. To this end, our UnoAPI curriculum takes a holistic approach based on language and the broader development ecosystem. Our curriculum, based on a systems foundation, integrates essential principles of distributed systems, programming languages, and software engineering. We argue that a curriculum should cover these topics to attract students to HPC and enable them to confidently solve computational problems using oneAPI. We have shared our materials with a small group of undergraduate sophomores and plan a follow-up study with a larger cohort by incorporating some of our materials in our existing HPC course.