PBL in Parallel and Distributed Programming course, HUST

Course overview

This course introduces an overview of parallel and distributed programming, applying to solve high-performance problems, runing on parallel or distributed computing platforms. The course consists of following topics: parallel and distributed computational architectures such as multi-threaded architecture, multi-core computational architecture, general purpose GPUs; how to design parallel algorithms for high-performance problems; Parallel programming models such as OpenMP, MPI, CUDA; write parallel programs for several typical problems such as matrix computation, graph, sorting, partial differential equation. After the course, students can build algorithms themselves and write parallel program using different parallel programming models, applied to many high-performance problems in practice.

Participants in piloting 

The course is obligatory for the 4th year of undergraduate student in Data science and AI major at the School of Information and Communication Technology, Hanoi University of Science and Technology. Approximately 60 students are enrolled in the course. The course applied problem-based learning method.

Timeframe

Fall 2019.

Use of ALIEN services and tools

Students learn according to PBL and Active Learning method.

The students work in small groups of about 3-5 peoples. Each group will select an problem from the list of problems posed by the teacher, explore related material, design the algorithm, implement the program, analyze and evaluate, and report the results.

Example of problems:

  • Matrix multiplication
  • Solving ODE and PDE problems
  • Solving Wave equations
  • Solving Heat equations
  • Solving Hydrodynamic Flow models

During the course, students discuss in groups, with guidance from teacher and teaching assistants.

Erasmus + ALIEN Project supports equipment for PBL classrooms including projectors, screens, TV Monitors, laptops, Audio system.