- Clone GamesmanOne
git clone https://github.com/GamesCrafters/GamesmanOne.git
- Run the installer script in the base directory
GamesmanOne will be automatically configured and installed. Run
cd GamesmanOne bash ./gamesman_install.sh
bin/gamesman
to launch the system.
GamesmanOne is built with CMake, which can take the following options:
Variable | Type | Description |
---|---|---|
CMAKE_BUILD_TYPE | String | Project build type. |
DISABLE_OPENMP | Bool | Defaults to OFF . Set this to ON to disable OpenMP. |
USE_MPI | Bool | Defaults to OFF . Set this to ON to enable MPI. |
Each one of the variables can be set at configure time by passing a definition of the variable to the cmake
command.
As an example, running cmake -DCMAKE_BUILD_TYPE=Release -DUSE_MPI=ON build
under the root project directory builds
the project in Release
mode with both OpenMP and MPI enabled.
In particular, the build type of the project should ALWAYS be set by providing a String value to CMAKE_BUILD_TYPE
.
The default build type used by the installer script is Release
, which enables compiler optimizations and disables assert
macros.
To reconfigure the project in Debug
mode with debug symbols attached and compiler optimizations turned off, run
cmake -DCMAKE_BUILD_TYPE=Release build
under the root project directory.
Documentation is available here.
For each new filed added, modify or create a new CMakeLists.txt
under the same directory of the file to include the file for compilation.
You may need to modify gamesman_install.sh
if, for example, you are linking new libraries as submodules.
- Clone GamesmanOne
git clone https://github.com/GamesCrafters/GamesmanOne.git
- Run
module load gcc/11.3.0 ucx/1.14.0 openmpi/5.0.0-ucx
if using thesavio4_htc
partition. For all other partitions, runmodule load gcc openmpi
. Note that you will need to re-run one of the abovemodule load
commands and recompile GamesmanOne if you decided to switch to or from thesavio4_htc
partition as the modules loaded at runtime depends on the partition selected. - Clean up previous build by running
cmake --build build --target clean
under the root project directory, ormake clean
under the build directory. - Reconfigure
cmake
by runningcmake -DCMAKE_BUILD_TYPE=Release -DUSE_MPI=ON build
under the root project directory. - Rebuild the project with
cmake --build build
under the root project directory.