High-Performance Computing and Engineering Educational Development and Practice Juan Chen* College of Computer National University of Defense Technology Changsha, China juanchen@nudt.edu.cn John Impagliazzo School of Engineering and Applied Science Hofstra University Hempstead, New York, USA john.impagliazzo@hofstra.edu Li Shen College of Computer National University of Defense Technology Changsha, China lishen@nudt.edu.cn Abstract—This Innovate Practice Full Paper presents HPC and engineering educational development and practice. Educators and researchers are witnessing the emergence of parallel and high-performance computing (HPC) in many computing and engineering environments worldwide. Single- core processing is slowly becoming obsolete while parallel solutions to application development are now replacing serial solutions to achieve higher performance, particularly in many scientific, engineering, and computing fields. Some universities or research institutes worldwide have developed and have become centers of supercomputing. Most of these centers, particularly the world acclaimed Tianhe-2 supercomputer developed by China’s National University of Defense Technology (NUDT), often have their own HPC educational approaches as well as their own curricula at both undergraduate and graduate levels. This paper presents some high-level HPC educational concepts, educational framework designs, and strategies for cultivating HPC talented graduates. In this work, the authors show unique perspectives and practical experiences on student capability, oriented toward HPC curricular development. They also show a step-by-step practical system in which real platform, real application, and research-teaching integration modes can immerse students into an HPC world for better understanding. The authors show how researchers with rich computing and engineering experience can become deeply involved in course design, in- class teaching, and in laboratory instruction. They also discuss the effectiveness of HPC courses at the NUDT and they show how HPC can become a stable element in computing and engineering education. Keywords—high-performance computing, HPC curricular systems, HPC education, step-by-step practice systems, educational modes, HPC computing and engineering education I. INTRODUCTION Parallel and high-performance computing (HPC) are emerging in many computing and engineering environments worldwide. Currently, single-core processing is slowly becoming obsolete. Parallel solutions to application development are now replacing serial solutions to achieve higher performance, particularly in many scientific, engineering, and computing fields. Some universities worldwide have developed and have become centers of supercomputing. Of interest is the accomplishment of the Tianhe-2 supercomputer developed by the National University of Defense Technology (NUDT) in China. Many centers for supercomputing often have their own high-performance computing curricula at undergraduate or graduate levels. These centers promote broad involvement in parallel and supercomputing; some even involve non-computing and non-engineering majors as exemplified at NUDT. Advancements in academia surrounding supercomputing research can form a strong basis for a robust curriculum and new possibilities for university students worldwide. From its inception, high-performance computing has been a very interdisciplinary academic and research area. Researchers, faculty members, and students now use supercomputers to acquire new knowledge, to publish their research results, and to explore nascent areas in a variety of scientific, computing, and engineering fields. In some areas, research would stall or even come to a halt without HPC knowledge. Therefore, it is imperative that HPC teaching and learning start early and that it becomes a distinct computing and engineering element in the education profile of students. However, high-performance computing technology develops very quickly. The gap between HPC technology development and HPC education is growing larger than before. Technical advancements outpace educational change and the “catch-up mode” becomes continuously challenging. Questions such as: How should educators respond to the latest parallel and distributed computing (PDC) and HPC research achievements? How do educators infuse this rapidly changing knowledge into PDC/HPC classes to make the computing and engineering undergraduate curricula prepare its students to serve better this evolving and developing field? This paper addresses these and other questions related to HPC education. II. OBSTACLES TO HPC EDUCATION Many obstacles exist regarding curricular issues, practical environments, and teaching modes for cultivating competent HPC students. An explanation of these challenges now follows. A. HPC Curricula and Education Needs Current HPC curricular systems cannot meet the educational needs to produce strong HPC graduates. High- performance computing has the characteristics of high system complexity, wide application fields, and comprehensiveness. There is an urgent need to produce many diverse and talented HPC professionals across multiple fields such as computers, applications, and system maintenance. However, the knowledge structures of these three fields are usually independent. Current methods of learning should break from this situation of having independent knowledge systems. Universities should develop stronger HPC curricular frameworks to accommodate the needs of different-types and different-levels of proficient HPC graduates and professionals. B. Practical Environments and Educational Processes The current educational environment has difficulty in supporting high-performance computing education processes. Students have difficulty in accessing real-world platforms and application cases; additionally, they lack practical training. The computing field needs to establish practical HPC environments, including different scales of parallel