/PTfS-CAM-Project

Primary LanguageC++MIT LicenseMIT

Programming Techniques for Supercomputers - CAM project

Background: Modelling 2D steady-state heat equation

This code project for the 10 ECTS PTfS module solves a linear system of equations to find a steady-state temperature distribution on a rectangular plate using the Conjugate Gradient (CG) and Preconditioned Conjugate Gradient (PCG) with symmetric Gauss-Seidel preconditioning methods.

Please see the tutorials for more information.

Usage

  1. Compile program by calling

    CXX=<compiler icpx or g++> make

    To print additional debug output during the execution, compile with -DDEBUG:

    CXX=<compiler icpx or g++> make EXTRA_FLAGS=-DDEBUG

    To compile with LIKWID use:

    LIKWID=on CXX=<compiler icpx or g++> make
  2. Run tests by running

    ./test
  3. Run performance tests by running

    ./perf <grid size y> <grid size x>