Consultancy and Total Solutions Training Provider for Embedded Systems, Electronics and Electrical Engineering, Programming, Computing, Operations, ISO9000, ISO14000 and Management.

Bridging the Gap

Training Courses

High Performance Computation on Distributed Multiprocessor Environments

Course id: 0031


High performance computing is the backbone for running massive models such as the simulation of atomic decay, protein folding, financial markets, fluid dynamics and weather prediction. Such models – traditionally simulated with supercomputers – can now be feasibly simulated with a vast network of commercial PCs due to the pervasiveness of high speed intranets and the Internet. The

This course concentrates on the theoretical and practical knowledge covering cluster computing using the Message Passing Interface (MPI) framework, the de facto standard of parallel programming over distributed memory. The course guide participants in designing and developing parallel programs from the ground up, and touches on critical concepts such as program design architectures and synchronization, along the way.

What you will learn

This course concentrates on the theoretical and practical knowledge covering the following main topics:
  • Installation and configuration of MPI for cluster computing
  • Designing parallel programs based on cluster computing systems
  • Developing parallel programs using MPI for cluster computers
  • Cluster computing synchronization, communication and debugging
  • Performance evaluation of cluster based parallel programs
A series of guided exercises will be carried out in implementing these topics in improving the comprehension of parallel programming design and development.

Who should attend

Engineers and researchers who wish to fully utilize the power of modern processors for highly computationally intensive applications through massive parallelism, without wanting/needing to know the nuts and bolts of the hardware architecture.


Participants have to be familiar with the general processor architecture and the C/C++ programming language.

Course methodology

This course is presented in a workshop style with lectures interlaced with demonstrations and hands-on practical exercises for maximum understanding. This course uses C/C++ under Microsoft Visual Studio on the Windows platform.

Course duration

3 days.

Course structure

  • Introduction
    • Standard processor architecture
    • Superscalar processor architecture
    • Flynn's taxonomy in computer architecture classification
  • Performance Assessment
    • Analysing the performance of parallel systems
  • Parallel programming
    • Identifying concurrency
    • Analytical modeling of parallel programs
  • Guided exercise 1: Installation and configuration of MPI
  • Parallel programming with MPI (Part 1)
    • Message passing paradigms using the MPI library
  • Guided exercise 2: Pi () computation with the Leibniz's formula
  • Parallel programming with MPI (Part 2)
    • Message passing paradigms using the MPI library
  • Guided exercise 3: Matrix multiplication
  • Parallel program design with MPI (Part 1)
    • Design strategies using divide & conquer
  • Guided exercise 4: Bucket sort
  • Parallel program design with MPI (Part 2)
    • Design strategies using divide & conquer
  • Guided exercise 5: Merge sort
  • Guided exercise 6: Numerical Integration (partition design)
  • Parallel program design with MPI
    • Design strategies using pipeline computation
  • Guided exercise 7: Sine computation (pipelined design)
  • Synchronization
    • Design of synchronization techniques
    • Implementing synchronization techniques
  • Guided exercise 8: Debugging a cluster based parallel program application
  • Guided exercise 9: Analysis and performance evaluation of a Mandelbrot set computation

Course Schedule





News on ProvenPac

  ProvenPac Sdn. Bhd.
  C-4-3 Gembira Park,
  Jalan Riang, 58200
  Kuala Lumpur, Malaysia

  Tel: +603 03 5889 5889

No public course
currently scheduled.


Please inform me when
this course is scheduled.


Please contact me to
arrange in-house training.