Skip to content

Commit

Permalink
Merge pull request #716 from streeve/cuda_build_ci
Browse files Browse the repository at this point in the history
Add Cuda build CI
  • Loading branch information
streeve authored Nov 20, 2023
2 parents bf6a3cd + 0cb68a7 commit dcaa181
Show file tree
Hide file tree
Showing 3 changed files with 71 additions and 23 deletions.
61 changes: 61 additions & 0 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -525,3 +525,64 @@ jobs:
-DGPU_TARGETS="gfx908"
cmake --build build --parallel 2 --verbose
cmake --install build
CUDA:
defaults:
run:
shell: bash
strategy:
matrix:
cxx: ['nvcc']
cmake_build_type: ['Release']
kokkos_ver: ['3.7.02']
runs-on: ubuntu-20.04
container: ghcr.io/ecp-copa/ci-containers/cuda:12.2.0
steps:
- name: Checkout kokkos
uses: actions/checkout@v3
with:
repository: kokkos/kokkos
ref: ${{ matrix.kokkos_ver }}
path: kokkos
- name: Build kokkos
working-directory: kokkos
run: |
cmake -B build \
-DCMAKE_INSTALL_PREFIX=$HOME/kokkos \
-DKokkos_ENABLE_CUDA=ON \
-DKokkos_ARCH_VOLTA72=ON \
-DKokkos_ENABLE_CUDA_LAMBDA=ON \
-DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }}
cmake --build build --parallel 2
cmake --install build
- name: Checkout arborx
uses: actions/checkout@v3
with:
repository: arborx/ArborX
ref: v1.2
path: arborx
- name: Build arborx
working-directory: arborx
run: |
cmake -B build \
-DKokkos_ROOT=${HOME}/kokkos \
-DCMAKE_INSTALL_PREFIX=$HOME/arborx \
-DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }}
cmake --build build --parallel 2
cmake --install build
- name: Checkout Cabana
uses: actions/checkout@v3
- name: Build Cabana
run: |
cmake -B build \
-DCMAKE_INSTALL_PREFIX=$HOME/Cabana \
-DMPIEXEC_MAX_NUMPROCS=2 -DMPIEXEC_PREFLAGS="--oversubscribe" \
-DCMAKE_PREFIX_PATH="$HOME/kokkos;$HOME/arborx;$HOME/heffte;$HOME/ALL" \
-DCMAKE_CXX_FLAGS="-Wall -Wextra -pedantic -Werror" \
-DCabana_ENABLE_TESTING=ON \
-DCabana_ENABLE_EXAMPLES=ON \
-DCabana_ENABLE_PERFORMANCE_TESTING=ON \
-DCabana_PERFORMANCE_EXPECTED_FLOPS=0 \
-DCMAKE_BUILD_TYPE=${{ matrix.cmake_build_type }}
cmake --build build --parallel 2 --verbose
cmake --install build
7 changes: 0 additions & 7 deletions grid/src/Cabana_Grid_IndexSpace.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -501,13 +501,6 @@ CAJITA_DEPRECATED auto createView( Args&&... args )
return Cabana::Grid::createView( std::forward<Args>( args )... );
}

template <class Scalar, class... Params>
CAJITA_DEPRECATED auto createView( const std::string& label,
const IndexSpace<1>& index_space )
{
return Cabana::Grid::createView<Scalar, Params...>( label, index_space );
}

template <class... Args>
CAJITA_DEPRECATED auto createSubview( Args&&... args )
{
Expand Down
26 changes: 10 additions & 16 deletions grid/src/Cabana_Grid_SparseArray.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -721,38 +721,32 @@ using SparseArrayLayout CAJITA_DEPRECATED =
Cabana::Grid::Experimental::SparseArrayLayout<DataTypes, EntityType,
MeshType, SparseMapType>;

template <class DataTypes, class EntityType, class MeshType,
class SparseMapType>
CAJITA_DEPRECATED auto createSparseArrayLayout(
const std::string label,
SparseArrayLayout<DataTypes, EntityType, MeshType, SparseMapType>& layout )
template <class... Args>
CAJITA_DEPRECATED auto createSparseArrayLayout( Args&&... args )
{
return Cabana::Grid::Experimental::createSparseArrayLayout( label, layout );
return Cabana::Grid::Experimental::createSparseArrayLayout(
std::forward<Args>( args )... );
}

template <class T>
using is_sparse_array_layout CAJITA_DEPRECATED =
Cabana::Grid::Experimental::is_sparse_array_layout<T>;

template <class DataTypes, class DeviceType, class EntityType, class MeshType,
template <class DataTypes, class MemorySpace, class EntityType, class MeshType,
class SparseMapType>
using SparseArray CAJITA_DEPRECATED =
Cabana::Grid::Experimental::SparseArray<DataTypes, DeviceType, EntityType,
Cabana::Grid::Experimental::SparseArray<DataTypes, MemorySpace, EntityType,
MeshType, SparseMapType>;

template <class T>
using is_sparse_array CAJITA_DEPRECATED =
Cabana::Grid::Experimental::is_sparse_array<T>;

template <class DeviceType, class DataTypes, class EntityType, class MeshType,
class SparseMapType>
CAJITA_DEPRECATED auto
createSparseArray( const std::string label,
SparseArray<DataTypes, DeviceType, EntityType, MeshType,
SparseMapType>& layout )
template <class MemorySpace, class... Args>
CAJITA_DEPRECATED auto createSparseArray( Args&&... args )
{
return Cabana::Grid::Experimental::createSparseArray<DeviceType>( label,
layout );
return Cabana::Grid::Experimental::createSparseArray<MemorySpace>(
std::forward<Args>( args )... );
}
//! \endcond
} // namespace Experimental
Expand Down

0 comments on commit dcaa181

Please sign in to comment.