Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: AMReX-Codes/amrex
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 027f2ff77fed33a191cfc735d8adaabb42d21743
Choose a base ref
...
head repository: AMReX-Codes/amrex
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 8fb23ec17a58284af6bdafbcda3eea0d86d8ce69
Choose a head ref
  • 7 commits
  • 23 files changed
  • 6 contributors

Commits on Jun 28, 2022

  1. CMake: FindDependency CUDAToolkit (#2849)

    If we install AMReX with CUDA support using a modern
    CMake, we need to repopulate targets such as `CUDA::curand`
    from `find_dependency` for downstream.
    Downstream users find us via `find_package` and that target
    link dependency showed up to be unpopulated in MFIX.
    ax3l authored Jun 28, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    21fe4b3 View commit details
  2. Fix gnu make on Crusher for mpi_gtl_hsa (#2857)

    Update environment variable at OLCF for mpi_gtl_hsa.
    jrood-nrel authored Jun 28, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    d2cb546 View commit details
  3. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    2c5f475 View commit details
  4. update the SENSEI in situ coupling for SENSEI v4.0.0 (#2785)

    In this release, an install of VTK is no longer required.
    To compile AMReX w/ SENSEI use:
    
    ```cmake
    -DAMReX_SENSEI=ON -DSENSEI_DIR=<path to SENSEI install>/<lib dir>/cmake
    ```
    
    Note: <lib dir> may be `lib` or `lib64` or something else depending on
    your OS and is determined by CMake at configure time. See the CMake
    GNUInstallDirs documentation for more information.
    burlen authored Jun 28, 2022

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    b2b9150 View commit details

Commits on Jun 29, 2022

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    e4c83cf View commit details
  2. Adding control APIs and namespacing for core algorithm paths like SpG…

    …EMM, SpMV, and SpTrans. (#2859)
    
    Co-authored-by: Paul Mullowney <[email protected]>
    PaulMullowney and Paul Mullowney authored Jun 29, 2022
    3

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    6f9a46c View commit details
  3. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
    Copy the full SHA
    8fb23ec View commit details
6 changes: 3 additions & 3 deletions .github/workflows/sensei.yml
Original file line number Diff line number Diff line change
@@ -17,17 +17,17 @@ jobs:
CC: clang
CXXFLAGS: "-Werror -Wshadow -Woverloaded-virtual -Wunreachable-code -fno-operator-names"
CMAKE_GENERATOR: Ninja
CMAKE_PREFIX_PATH: /root/install/sensei/develop/lib/cmake
CMAKE_PREFIX_PATH: /root/install/sensei/v4.0.0/lib64/cmake
container:
image: ryankrattiger/sensei:fedora33-vtk-mpi-20210616
image: senseiinsitu/ci:fedora35-amrex-20220613
steps:
- uses: actions/checkout@v2
- name: Setup
run: mkdir build
- name: Configure
run: |
cd build
cmake .. \
cmake .. \
-DCMAKE_BUILD_TYPE=Debug \
-DAMReX_ENABLE_TESTS=ON \
-DAMReX_FORTRAN=OFF \
10 changes: 6 additions & 4 deletions Docs/sphinx_documentation/source/Visualization.rst
Original file line number Diff line number Diff line change
@@ -873,9 +873,12 @@ and point to the CMake configuration installed with SENSEI.

.. code-block:: bash
cmake -DAMReX_SENSEI=ON -DSENSEI_DIR=<path to install>/lib/cmake ..
cmake -DAMReX_SENSEI=ON -DSENSEI_DIR=<path to install>/<lib dir>/cmake ..
When CMake generates the make files proceed as usual.
When CMake generates the make files proceed as usual. Note: <lib dir> may be
`lib` or `lib64` or something else depending on what CMake decided to use for
your particular OS. See the CMake GNUInstallDirs documentation for more
information.

.. code-block:: bash
@@ -952,8 +955,7 @@ dataset.

Obtaining SENSEI
-----------------
SENSEI is hosted on Kitware's Gitlab site at https://gitlab.kitware.com/sensei/sensei
It's best to checkout the latest release rather than working on the master branch.
SENSEI is hosted on github at https://github.com/SENSEI-insitu/SENSEI.git

To ease the burden of wrangling back end installs SENSEI provides two platforms
with all dependencies pre-installed, a VirtualBox VM, and a NERSC Cori
16 changes: 14 additions & 2 deletions Src/Base/AMReX.cpp
Original file line number Diff line number Diff line change
@@ -123,6 +123,11 @@ namespace {
#ifdef AMREX_USE_HYPRE
namespace {
int init_hypre = 1;
#if defined(HYPRE_USING_CUDA) || defined(HYPRE_USING_HIP)
int hypre_spgemm_use_vendor = 0;
int hypre_spmv_use_vendor = 0;
int hypre_sptrans_use_vendor = 0;
#endif
}
#endif

@@ -489,6 +494,11 @@ amrex::Initialize (int& argc, char**& argv, bool build_parm_parse,

#ifdef AMREX_USE_HYPRE
pp.queryAdd("init_hypre", init_hypre);
#if defined(HYPRE_USING_CUDA) || defined(HYPRE_USING_HIP)
pp.queryAdd("hypre_spgemm_use_vendor", hypre_spgemm_use_vendor);
pp.queryAdd("hypre_spmv_use_vendor", hypre_spmv_use_vendor);
pp.queryAdd("hypre_sptrans_use_vendor", hypre_sptrans_use_vendor);
#endif
#endif
}

@@ -526,7 +536,7 @@ amrex::Initialize (int& argc, char**& argv, bool build_parm_parse,
#ifdef AMREX_USE_HYPRE
if (init_hypre) {
HYPRE_Init();
#ifdef HYPRE_USING_CUDA
#if defined(HYPRE_USING_CUDA) || defined(HYPRE_USING_HIP)

#if defined(HYPRE_RELEASE_NUMBER) && (HYPRE_RELEASE_NUMBER >= 22400)

@@ -543,7 +553,9 @@ amrex::Initialize (int& argc, char**& argv, bool build_parm_parse,
#endif
/* This API below used to be HYPRE_SetSpGemmUseCusparse(). This was changed in commit
Hypre master commit dfdd1cd12f */
HYPRE_SetSpGemmUseVendor(false);
HYPRE_SetSpGemmUseVendor(hypre_spgemm_use_vendor);
HYPRE_SetSpMVUseVendor(hypre_spmv_use_vendor);
HYPRE_SetSpTransUseVendor(hypre_sptrans_use_vendor);
HYPRE_SetMemoryLocation(HYPRE_MEMORY_DEVICE);
HYPRE_SetExecutionPolicy(HYPRE_EXEC_DEVICE);
HYPRE_SetUseGpuRand(true);
8 changes: 4 additions & 4 deletions Src/Extern/SENSEI/AMReX_AmrDataAdaptor.H
Original file line number Diff line number Diff line change
@@ -30,10 +30,10 @@ public:
int GetNumberOfArrays(const std::string &meshName, int association, unsigned int &numberOfArrays) override;
int GetArrayName(const std::string &meshName, int association, unsigned int index, std::string &arrayName) override;
#endif
int GetMesh(const std::string &meshName, bool structureOnly, vtkDataObject *&mesh) override;
int AddGhostNodesArray(vtkDataObject* mesh, const std::string &meshName) override;
int AddGhostCellsArray(vtkDataObject* mesh, const std::string &meshName) override;
int AddArray(vtkDataObject* mesh, const std::string &meshName, int association, const std::string &arrayName) override;
int GetMesh(const std::string &meshName, bool structureOnly, svtkDataObject *&mesh) override;
int AddGhostNodesArray(svtkDataObject* mesh, const std::string &meshName) override;
int AddGhostCellsArray(svtkDataObject* mesh, const std::string &meshName) override;
int AddArray(svtkDataObject* mesh, const std::string &meshName, int association, const std::string &arrayName) override;
int ReleaseData() override;

protected:
Loading