This paper presents the research project based methodology of teaching parallel programming to master’s students in aHigh Performance Computing program. The requirements for completing a master’s degree state that all students shouldbe able to develop computer simulation programs using parallel and distributed computing technologies, regardless ofstudents’ background and their preferences for in-depth study of high or low-level programming, administration, andinformation security. Creating computer simulations based on high-performance computing is impossible without theexperience of solving such key issues of low-level parallel programming as the data flow management, synchronization,load balancing and fault tolerance. We believe that the best way to explore these issues is phased implementation ofappropriate algorithms in the application, and then carrying out computational experiments. Therefore, as a main tool forthe practical study, we offer the implementation of special project tasks. While developing the course tasks, we have usednot only our teaching experience of parallel programming for undergraduate and graduate students, but we also relied onthe existing practice of the development of distributed computing systems. In addition to the classic tasks, studentsexplored pairing algorithms, load balancing and fault tolerance through implementation in distributed applications andtesting in computational experiments. Our experience has shown that this approach to teaching parallel programming,which includes modeling and simulations, enabled students to proceed gradually from classic tasks to the implementationof full-scale research projects.
© 2001-2025 Fundación Dialnet · Todos los derechos reservados