NuSiF-Solver/PoissonSolver/2D-mpi
2023-11-21 05:27:11 +01:00
..
src Reformat. Merge improved solvers. 2023-11-21 05:27:11 +01:00
config.mk Initial checkin 2023-02-05 07:34:23 +01:00
include_CLANG.mk Initial checkin 2023-02-05 07:34:23 +01:00
include_GCC.mk Initial checkin 2023-02-05 07:34:23 +01:00
include_ICC.mk Initial checkin 2023-02-05 07:34:23 +01:00
Makefile Initial checkin 2023-02-05 07:34:23 +01:00
poisson.par Initial checkin 2023-02-05 07:34:23 +01:00
README.md Reformat. Merge improved solvers. 2023-11-21 05:27:11 +01:00
surface.plot Initial checkin 2023-02-05 07:34:23 +01:00

C source skeleton

Build

  1. Configure the tool chain and additional options in config.mk:
# Supported: GCC, CLANG, ICC
TAG ?= GCC
ENABLE_OPENMP ?= false

OPTIONS +=  -DARRAY_ALIGNMENT=64
#OPTIONS +=  -DVERBOSE_AFFINITY
#OPTIONS +=  -DVERBOSE_DATASIZE
#OPTIONS +=  -DVERBOSE_TIMER

The verbosity options enable detailed output about affinity settings, allocation sizes and timer resolution.

  1. Build with:
make

You can build multiple tool chains in the same directory, but notice that the Makefile is only acting on the one currently set. Intermediate build results are located in the <TOOLCHAIN> directory.

To output the executed commands use:

make Q=
  1. Clean up with:
make clean

to clean intermediate build results.

make distclean

to clean intermediate build results and binary.

  1. (Optional) Generate assembler:
make asm

The assembler files will also be located in the <TOOLCHAIN> directory.