Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cmake/adios2Config.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ set(ADIOS2_USE_Fortran

# Format/compression support
set(ADIOS2_USE_HDF5
ON
OFF
CACHE BOOL "Use HDF5 for ADIOS2")

set(ADIOS2_USE_MPI
Expand Down
2 changes: 1 addition & 1 deletion cmake/benchmark.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ add_executable(${exec} ${src})

set(libs ntt_global ntt_metrics ntt_kernels ntt_archetypes ntt_framework)
if(${output})
list(APPEND libs ntt_output ntt_checkpoint)
list(APPEND libs ntt_output)
endif()
add_dependencies(${exec} ${libs})
target_link_libraries(${exec} PRIVATE ${libs} stdc++fs)
7 changes: 0 additions & 7 deletions cmake/tests.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,6 @@ add_subdirectory(${SRC_DIR}/kernels ${CMAKE_CURRENT_BINARY_DIR}/kernels)
add_subdirectory(${SRC_DIR}/archetypes ${CMAKE_CURRENT_BINARY_DIR}/archetypes)
add_subdirectory(${SRC_DIR}/framework ${CMAKE_CURRENT_BINARY_DIR}/framework)
add_subdirectory(${SRC_DIR}/output ${CMAKE_CURRENT_BINARY_DIR}/output)
if(${output})
add_subdirectory(${SRC_DIR}/checkpoint ${CMAKE_CURRENT_BINARY_DIR}/checkpoint)
endif()

set(TEST_DIRECTORIES "")

Expand All @@ -27,10 +24,6 @@ endif()

list(APPEND TEST_DIRECTORIES output)

if(${output})
list(APPEND TEST_DIRECTORIES checkpoint)
endif()

foreach(test_dir IN LISTS TEST_DIRECTORIES)
add_subdirectory(${SRC_DIR}/${test_dir}/tests
${CMAKE_CURRENT_BINARY_DIR}/${test_dir}/tests)
Expand Down
25 changes: 22 additions & 3 deletions dev/nix/adios2.nix
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ let
BUILD_TESTING = "OFF";
ADIOS2_BUILD_EXAMPLES = "OFF";
ADIOS2_USE_MPI = if mpi then "ON" else "OFF";
ADIOS2_HAVE_HDF5_VOL = if mpi then "ON" else "OFF";
ADIOS2_HAVE_HDF5_VOL = if (mpi && hdf5) then "ON" else "OFF";
CMAKE_BUILD_TYPE = "Release";
};
stdenv = pkgs.gcc13Stdenv;
Expand All @@ -40,8 +40,27 @@ stdenv.mkDerivation {

propagatedBuildInputs = [
pkgs.gcc13
] ++ (if hdf5 then (if mpi then [ pkgs.hdf5-mpi ] else [ pkgs.hdf5-cpp ]) else [ ]);
# ++ (if mpi then [ pkgs.openmpi ] else [ ]);
]
++ (
if hdf5 then
(
if mpi then
[
pkgs.hdf5-mpi
]
else
[ pkgs.hdf5-cpp ]
)
else
(
if mpi then
[
pkgs.mpi
]
else
[ ]
)
);

configurePhase = ''
cmake -B build $src ${
Expand Down
15 changes: 2 additions & 13 deletions dev/nix/kokkos.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

let
name = "kokkos";
pversion = "4.6.01";
pversion = "4.7.01";
compilerPkgs = {
"HIP" = with pkgs.rocmPackages; [
llvm.rocm-merged-llvm
Expand Down Expand Up @@ -56,7 +56,7 @@ pkgs.stdenv.mkDerivation rec {
src = pkgs.fetchgit {
url = "https://github.com/kokkos/kokkos/";
rev = "${pversion}";
sha256 = "sha256-+yszUbdHqhIkJZiGLZ9Ln4DYUosuJWKhO8FkbrY0/tY=";
sha256 = "sha256-MgphOsKE8umgYxVQZzex+elgvDDC09JaMCoU5YXaLco=";
};

nativeBuildInputs = with pkgs; [
Expand Down Expand Up @@ -92,15 +92,4 @@ pkgs.stdenv.mkDerivation rec {
installPhase = ''
cmake --install build
'';

# cmakeFlags = [
# "-D CMAKE_CXX_STANDARD=17"
# "-D CMAKE_CXX_EXTENSIONS=OFF"
# "-D CMAKE_POSITION_INDEPENDENT_CODE=TRUE"
# "-D Kokkos_ARCH_${getArch { }}=ON"
# (if gpu != "none" then "-D Kokkos_ENABLE_${gpu}=ON" else "")
# "-D CMAKE_BUILD_TYPE=Release"
# ] ++ (cmakeExtraFlags.${gpu} src);

# enableParallelBuilding = true;
}
43 changes: 21 additions & 22 deletions dev/nix/shell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
},
gpu ? "NONE",
arch ? "NATIVE",
hdf5 ? true,
hdf5 ? false,
mpi ? false,
}:

Expand Down Expand Up @@ -62,27 +62,26 @@ pkgs.mkShell {
pkgs.zlib
]);

shellHook =
''
BLUE='\033[0;34m'
NC='\033[0m'
shellHook = ''
BLUE='\033[0;34m'
NC='\033[0m'

echo "following environment variables are set:"
''
+ pkgs.lib.concatStringsSep "" (
pkgs.lib.mapAttrsToList (
category: vars:
pkgs.lib.concatStringsSep "" (
pkgs.lib.mapAttrsToList (name: value: ''
export ${name}=${value}
echo -e " ''\${BLUE}${name}''\${NC}=${value}"
'') vars.${gpuUpper}
)
) envVars
)
+ ''
echo ""
echo -e "${name} nix-shell activated"
'';
echo "following environment variables are set:"
''
+ pkgs.lib.concatStringsSep "" (
pkgs.lib.mapAttrsToList (
category: vars:
pkgs.lib.concatStringsSep "" (
pkgs.lib.mapAttrsToList (name: value: ''
export ${name}=${value}
echo -e " ''\${BLUE}${name}''\${NC}=${value}"
'') vars.${gpuUpper}
)
) envVars
)
+ ''
echo ""
echo -e "${name} nix-shell activated"
'';

}
13 changes: 11 additions & 2 deletions input.example.toml
Original file line number Diff line number Diff line change
Expand Up @@ -302,10 +302,19 @@
# @default: "Boris" [massive]; "Photon" [massless]
# @enum: "Boris", "Vay", "Boris,GCA", "Vay,GCA", "Photon", "None"
pusher = ""
# Number of additional (payload) variables for each particle of the given species
# Number of additional real-valued variables (payloads) for each particle of the given species
# @type: ushort
# @default: 0
n_payloads = ""
n_payloads_real = ""
# Number of additional integer-valued variables (payloads) for each particle of the given species
# @type: ushort
# @default: 0
# @note: If tracking is enabled, one or two extra integer payloads are reserved (depending on whether MPI is enabled)
n_payloads_int = ""
# Enable tracking of particles using indices for the given species
# @type: bool
# @default: false
tracking = ""
# Radiation reaction to use for the species
# @type: string
# @default: "None"
Expand Down
4 changes: 0 additions & 4 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,6 @@ add_subdirectory(${SRC_DIR}/framework ${CMAKE_CURRENT_BINARY_DIR}/framework)
add_subdirectory(${SRC_DIR}/engines ${CMAKE_CURRENT_BINARY_DIR}/engines)
add_subdirectory(${SRC_DIR}/output ${CMAKE_CURRENT_BINARY_DIR}/output)

if(${output})
add_subdirectory(${SRC_DIR}/checkpoint ${CMAKE_CURRENT_BINARY_DIR}/checkpoint)
endif()

set(ENTITY ${PROJECT_NAME}.xc)
set(SOURCES ${SRC_DIR}/entity.cpp)

Expand Down
Loading