diff --git a/.github/workflows/dependencies/hip-openmpi.sh b/.github/workflows/dependencies/hip-openmpi.sh index eea95c482..a6e90e0d6 100755 --- a/.github/workflows/dependencies/hip-openmpi.sh +++ b/.github/workflows/dependencies/hip-openmpi.sh @@ -54,6 +54,7 @@ sudo apt-get install -y --no-install-recommends \ rocfft-dev \ rocprim-dev \ rocrand-dev \ + rocsparse-dev \ hiprand-dev # activate diff --git a/.github/workflows/dependencies/nvcc11-openmpi.sh b/.github/workflows/dependencies/nvcc11-openmpi.sh index 74a20c74d..5564b47ec 100755 --- a/.github/workflows/dependencies/nvcc11-openmpi.sh +++ b/.github/workflows/dependencies/nvcc11-openmpi.sh @@ -35,7 +35,8 @@ sudo apt-get install -y \ cuda-nvml-dev-11-3 \ cuda-nvtx-11-3 \ libcufft-dev-11-3 \ - libcurand-dev-11-3 + libcurand-dev-11-3 \ + libcusparse-dev-11-3 sudo ln -s cuda-11.3 /usr/local/cuda # cmake-easyinstall diff --git a/CMakeLists.txt b/CMakeLists.txt index b71a613a6..308e7bc1c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ # Preamble #################################################################### # cmake_minimum_required(VERSION 3.24.0) -project(ImpactX VERSION 24.12) +project(ImpactX VERSION 25.01) include(${ImpactX_SOURCE_DIR}/cmake/ImpactXFunctions.cmake) diff --git a/cmake/dependencies/ABLASTR.cmake b/cmake/dependencies/ABLASTR.cmake index 588a74c38..4fdc9195d 100644 --- a/cmake/dependencies/ABLASTR.cmake +++ b/cmake/dependencies/ABLASTR.cmake @@ -58,6 +58,7 @@ macro(find_ablastr) set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) set(ABLASTR_FFT ${ImpactX_FFT} CACHE BOOL "" FORCE) + set(AMReX_FFT ${ImpactX_FFT} CACHE BOOL "" FORCE) set(WarpX_APP OFF CACHE BOOL "" FORCE) set(WarpX_LIB OFF CACHE BOOL "" FORCE) @@ -127,7 +128,7 @@ macro(find_ablastr) set(COMPONENT_DIM 3D) set(COMPONENT_PRECISION ${ImpactX_PRECISION} P${ImpactX_PRECISION}) - find_package(ABLASTR 24.10 CONFIG REQUIRED COMPONENTS ${COMPONENT_DIM}) + find_package(ABLASTR 25.01 CONFIG REQUIRED COMPONENTS ${COMPONENT_DIM}) message(STATUS "ABLASTR: Found version '${ABLASTR_VERSION}'") endif() @@ -161,7 +162,7 @@ set(ImpactX_openpmd_src "" set(ImpactX_ablastr_repo "https://github.com/ECP-WarpX/WarpX.git" CACHE STRING "Repository URI to pull and build ABLASTR from if(ImpactX_ablastr_internal)") -set(ImpactX_ablastr_branch "24.10" +set(ImpactX_ablastr_branch "25.01" CACHE STRING "Repository branch for ImpactX_ablastr_repo if(ImpactX_ablastr_internal)") @@ -169,7 +170,7 @@ set(ImpactX_ablastr_branch "24.10" set(ImpactX_amrex_repo "https://github.com/AMReX-Codes/amrex.git" CACHE STRING "Repository URI to pull and build AMReX from if(ImpactX_amrex_internal)") -set(ImpactX_amrex_branch "e64ffef57a7608d1d60f9abe738cc634e9c1272e" +set(ImpactX_amrex_branch "" CACHE STRING "Repository branch for ImpactX_amrex_repo if(ImpactX_amrex_internal)") diff --git a/cmake/dependencies/pyAMReX.cmake b/cmake/dependencies/pyAMReX.cmake index e9c27b6b4..7632c88b9 100644 --- a/cmake/dependencies/pyAMReX.cmake +++ b/cmake/dependencies/pyAMReX.cmake @@ -59,7 +59,7 @@ function(find_pyamrex) endif() elseif(NOT ImpactX_pyamrex_internal) # TODO: MPI control - find_package(pyAMReX 24.10 CONFIG REQUIRED) + find_package(pyAMReX 25.01 CONFIG REQUIRED) message(STATUS "pyAMReX: Found version '${pyAMReX_VERSION}'") endif() endfunction() @@ -74,7 +74,7 @@ option(ImpactX_pyamrex_internal "Download & build pyAMReX" ON) set(ImpactX_pyamrex_repo "https://github.com/AMReX-Codes/pyamrex.git" CACHE STRING "Repository URI to pull and build pyamrex from if(ImpactX_pyamrex_internal)") -set(ImpactX_pyamrex_branch "8742a79c29b7db30c7287c8e33109c0d8be1277a" +set(ImpactX_pyamrex_branch "25.01" CACHE STRING "Repository branch for ImpactX_pyamrex_repo if(ImpactX_pyamrex_internal)") diff --git a/docs/source/conf.py b/docs/source/conf.py index 2101a45f3..61210e106 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -73,9 +73,9 @@ # built documents. # # The short X.Y version. -version = "24.12" +version = "25.01" # The full version, including alpha/beta/rc tags. -release = "24.12" +release = "25.01" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/setup.py b/setup.py index c794ea6e1..dcf8bd749 100644 --- a/setup.py +++ b/setup.py @@ -230,7 +230,7 @@ def build_extension(self, ext): setup( name="impactx", # note PEP-440 syntax: x.y.zaN but x.y.z.devN - version="24.12", + version="25.01", packages=["impactx"], # Python sources: package_dir={"": "src/python"}, diff --git a/src/particles/spacecharge/PoissonSolve.cpp b/src/particles/spacecharge/PoissonSolve.cpp index d9c9b3dd2..a414604b9 100644 --- a/src/particles/spacecharge/PoissonSolve.cpp +++ b/src/particles/spacecharge/PoissonSolve.cpp @@ -80,6 +80,7 @@ namespace impactx::spacecharge sorted_phi.emplace_back(&phi[lev]); } + const bool is_igf_2d = false; const bool do_single_precision_comms = false; const bool eb_enabled = false; ablastr::fields::computePhi( @@ -95,6 +96,7 @@ namespace impactx::spacecharge pc.GetParGDB()->boxArray(), ablastr::utils::enums::GridType::Collocated, is_solver_igf_on_lev0, + is_igf_2d, eb_enabled, do_single_precision_comms, rel_ref_ratio