UCL-CCS / HemePure-GPU

GPU version of HemeLB code (HemePure)
BSD 3-Clause "New" or "Revised" License
5 stars 9 forks source link

HemePure-GPU

GPU version of HemePure.
The user can either:

  1. Run the Full build script (FullBuild.sh), which first builds the dependencies and then compiles the source code or
  2. Do these steps as listed here:

Build dependencies before attempting to build hemepure_gpu.

DEPENDENCIES

1) Create dep/build/ . 2) In dep/build/ run ccmake -B. -H../ or ccmake .. . 3) Configure using CMake. 4) Run make in dep/build/.

SOURCE

1) Create src/build/. 2) In src/build/ run ccmake -B. -H../ or ccmake .. . 3) Configure using CMake. 4) Run make in src/build/.

IMPORTANT NOTE
Remember to modify the following (in the script FullBuild.sh, or in src/CMakeLists.txt) depending on the GPU compute capability (-gencode arch=compute_70,code=sm_70) of the NVIDIA GPUs available on the system
-DCMAKE_CUDA_FLAGS="-ccbin g++ -gencode arch=compute_70,code=sm_70 -lineinfo --ptxas-options=-v --disable-warnings"

EXECUTION OF THE PROGRAM

Running the executable can be done in the same way as the CPU version.
Launch a HemeLB simulation with the instruction:
mpirun -n N -in <input file *.xml address> -out
e.g. mpirun -n 4 ./hemepure_gpu -in ./input.xml -out results

A detailed description of the input file and how to run a simulation is provided in the official HemeLB website
http://hemelb.org/tutorials/simulation/

Cases

The folder cases/bifurcation_hires/ contains: 1) the geometry input file (bifurcation.gmy) 2) the input file for the simulation (input.xml)

Analysis of results

The analysis of results can be done following the instructions provided in the official HemeLB website
http://hemelb.org/tutorials/simulation/sim_section3/