A CUDA benchmark for the Fast force-coupling method
Modify the /src/config.hpp file to select available options. To compile, under the home directory of this project, run
make clean xwhere x is one of the given options in the makefile. The default path of the generated executables are under the repository /bin/ .
For Imperial College Maths Department users, on the nvidia4 machine, run
nvidia-smito check node status, and then type
export CUDA_VISIBLE_DEVICES=xto select the available node.
Run with
./bin/xwhere x is the name of the executable binary.
A Python script is provided to automatically run sequential simulations using a single binary file. This is achieved by replacing the text in a config file which is then read by the binary file.
⚠️ The Python script is very custom written and does not run out of the box: Be very careful here!
To use that, first change the path in 'settings.py' to match your fast fcm directory path. Create the required directory for data saving.
You will need to use the random generator by compiling ''' make RANDOM_GENERATOR '''
To use the script, modify the parameters in file script.py. The member function start_loop can be modified to sweep the simulation parameters. Data generation and data reading/processing are separate process, and can be controled by system arguments passed in the terminal.
Run simulations with
python3 script.py run