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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions cmake/Modules/Packages/KOKKOS.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -93,8 +93,8 @@ if(DOWNLOAD_KOKKOS)
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_CXX_EXTENSIONS=${CMAKE_CXX_EXTENSIONS}")
list(APPEND KOKKOS_LIB_BUILD_ARGS "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}")
include(ExternalProject)
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/5.0.2.tar.gz" CACHE STRING "URL for KOKKOS tarball")
set(KOKKOS_SHA256 "d826f2e0bf1bc3515b4887e3a2594c7fb7a2b5b005dd8798242a8fd1953a9a21" CACHE STRING "SHA256 checksum of KOKKOS tarball")
set(KOKKOS_URL "https://github.com/kokkos/kokkos/archive/5.1.0.tar.gz" CACHE STRING "URL for KOKKOS tarball")
set(KOKKOS_SHA256 "66b2526569a70a21b2aeaed8dbb1cbe8b475f3c33719eac13bc7eed02e8c6590" CACHE STRING "SHA256 checksum of KOKKOS tarball")
mark_as_advanced(KOKKOS_URL)
mark_as_advanced(KOKKOS_SHA256)
GetFallbackURL(KOKKOS_URL KOKKOS_FALLBACK)
Expand All @@ -119,7 +119,7 @@ if(DOWNLOAD_KOKKOS)
add_dependencies(LAMMPS::KOKKOSCORE kokkos_build)
add_dependencies(LAMMPS::KOKKOSCONTAINERS kokkos_build)
elseif(EXTERNAL_KOKKOS)
find_package(Kokkos 5.0.2 REQUIRED CONFIG)
find_package(Kokkos 5.1.0 REQUIRED CONFIG)
target_link_libraries(lammps PRIVATE Kokkos::kokkos)
else()
set(LAMMPS_LIB_KOKKOS_SRC_DIR ${LAMMPS_LIB_SOURCE_DIR}/kokkos)
Expand Down
11 changes: 10 additions & 1 deletion doc/src/Build_extras.rst
Original file line number Diff line number Diff line change
Expand Up @@ -691,9 +691,15 @@ They must be specified in uppercase.
* - BLACKWELL100
- GPU
- NVIDIA Blackwell generation CC 10.0
* - BLACKWELL103
- GPU
- NVIDIA Blackwell generation CC 10.3
* - BLACKWELL120
- GPU
- NVIDIA Blackwell generation CC 12.0
* - BLACKWELL121
- GPU
- NVIDIA Blackwell generation CC 12.1
* - AMD_GFX906
- GPU
- AMD GPU MI50/60
Expand All @@ -712,6 +718,9 @@ They must be specified in uppercase.
* - AMD_GFX942_APU
- GPU
- AMD APU MI300A
* - AMD_GFX950
- GPU
- AMD GPU MI350
* - AMD_GFX1030
- GPU
- AMD GPU V620/W6800
Expand Down Expand Up @@ -746,7 +755,7 @@ They must be specified in uppercase.
- GPU
- Intel GPU DG2

This list was last updated for version 4.7.1 of the Kokkos library.
This list was last updated for version 5.1.0 of the Kokkos library.

.. tabs::

Expand Down
65 changes: 65 additions & 0 deletions lib/kokkos/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,60 @@
# CHANGELOG
## 5.1.0

[Full Changelog](https://github.com/kokkos/kokkos/compare/5.0.2...5.1.0)

### Features:
* Export Kokkos type traits as C++20 concepts [\#8494](https://github.com/kokkos/kokkos/pull/8494)

### Backend and Architecture Enhancements:

#### CUDA:
* Added `Kokkos_ARCH_BLACKWELL103` configure option for NVIDIA B300 GPUs [\#8791](https://github.com/kokkos/kokkos/pull/8791)
* Fix compiling with Clang+Cuda+OpenMP with Kokkos_ENABLE_COMPILE_AS_CMAKE_LANGUAGE=ON [\#8810](https://github.com/kokkos/kokkos/pull/8810)
* `nvcc_wrapper`: Add support for `-Ofc` and `--fdevice-time-trace` flags [\#8865](https://github.com/kokkos/kokkos/pull/8865)

#### HIP:
* Search the CMake variable `ROCM_PATH` for dependencies [\#8669](https://github.com/kokkos/kokkos/pull/8669)
* Added support for brain floating-point (`bhalf_t`) [\#8705](https://github.com/kokkos/kokkos/pull/8705)
* Implemented true reduced-precision mathematical functions (instead of falling back to `float`) [\#8705](https://github.com/kokkos/kokkos/pull/8705)
* Add support for AMD MI355 and MI350 (`AMD_GFX950`) [\#8839](https://github.com/kokkos/kokkos/pull/8839)
* Fix race conditions in HIP `parallel_scan` when running on MI300A [\#8648](https://github.com/kokkos/kokkos/pull/8648)

### General Enhancements
* Enable ScatterView to contribute into a View that is an rvalue [\#8594](https://github.com/kokkos/kokkos/pull/8594)
* Add bitwise operators to simd vectors and simd masks [\#8565](https://github.com/kokkos/kokkos/pull/8565)
* Use Array::size_type for subscript operators [\#8692](https://github.com/kokkos/kokkos/pull/8692)
* Add missing numeric trait `denorm_min` for `Kokkos::Experimental::half_t` and `Kokkos::Experimental::bhalf_t` [\#8769](https://github.com/kokkos/kokkos/pull/8769)
* Use StaticBatchSize in ViewFill [\#8795](https://github.com/kokkos/kokkos/pull/8795)
* Enforce failure when exceeding team_size_max and scratch_size_max checks [\#7445](https://github.com/kokkos/kokkos/pull/7445)
* Enable MPI detection with PALS [\#8895](https://github.com/kokkos/kokkos/pull/8895)
* Add simd memory permute functions [\#8775](https://github.com/kokkos/kokkos/pull/8775)
* Performance improvements using `MDRangePolicy` with `CUDA`, `HIP` and `SYCL` [\#8638](https://github.com/kokkos/kokkos/pull/8638), [\#8731](https://github.com/kokkos/kokkos/pull/8731)
* Add `Kokkos::norm`for `Kokkos::complex`- similar to `std::norm` [\#8627](https://github.com/kokkos/kokkos/pull/8927)
* Use neon and sve SIMD instructions if `nvcc` supports them [\#8667](https://github.com/kokkos/kokkos/pull/8667)
* Expand math support: complete the implementation of all remaining math functions and increase half-type support [\#8595](https://github.com/kokkos/kokkos/pull/8789) [\#8858](https://github.com/kokkos/kokkos/pull/8858) [\#8873](https://github.com/kokkos/kokkos/pull/8873) [\#8712](https://github.com/kokkos/kokkos/pull/8712) [\#8827](https://github.com/kokkos/kokkos/pull/8827) [\#8819](https://github.com/kokkos/kokkos/pull/8819) [\#8719](https://github.com/kokkos/kokkos/pull/8719) [\#8863](https://github.com/kokkos/kokkos/pull/8863) [\#8862](https://github.com/kokkos/kokkos/pull/8862) [\#8778](https://github.com/kokkos/kokkos/pull/8778) [\#8891](https://github.com/kokkos/kokkos/pull/8891)
* Improve performance of `deep_copy` from scalar in view fill using StaticBatchSize [\#8795](https://github.com/kokkos/kokkos/pull/8795) [\#8829](https://github.com/kokkos/kokkos/pull/8829)

### Build System Changes
* Warn about multiple device architectures enabled by `find_package(HIP)` [\#8938](https://github.com/kokkos/kokkos/pull/8938)

### Incompatibilities (i.e. breaking changes)
* Execution spaces can only be constructed after `Kokkos::initialize()` has been called and must be destructed before `Kokkos::finalize()` [\#8546](https://github.com/kokkos/kokkos/pull/8546) [\#8677](https://github.com/kokkos/kokkos/pull/8677)
* ScatterValue isn't move constructible/assignable anymore [\#8761](https://github.com/kokkos/kokkos/pull/8761)
* Enforce TeamPolicy constructor preconditions (includes vector length must be a power of two) [\#8904](https://github.com/kokkos/kokkos/pull/8904) [\#8907](https://github.com/kokkos/kokkos/pull/8907)
* OpenMP: Warn on exec space instance created within omp region [\#8919](https://github.com/kokkos/kokkos/pull/8919)
* Remove the deprecated OpenMPTarget backend [\#8701](https://github.com/kokkos/kokkos/pull/8701) [\#8717](https://github.com/kokkos/kokkos/pull/8717) [\#8749](https://github.com/kokkos/kokkos/pull/8749) [\#8767](https://github.com/kokkos/kokkos/pull/8767)

### Bug Fixes
* Fix reduction_identity for BAnd [\#8715](https://github.com/kokkos/kokkos/pull/8715)
* Restrict lock free host atomics to the actual sizes that are lock free [\#8809](https://github.com/kokkos/kokkos/pull/8809)
* Use intrinsics when calling min and max on simd vectors of integral types [\#8899](https://github.com/kokkos/kokkos/pull/8899)
* Adds missing `constexpr` specifiers on `conj()`, and for the `real()` and `imag()` non-member functions taking complex numbers [\#8928](https://github.com/kokkos/kokkos/pull/8928)
* Ensure that execution space instances fence on finalize [\#8626](https://github.com/kokkos/kokkos/pull/8626)
* Update `team_fan_{in|out}` member functions of `ThreadsExecTeamMember` not to call host-only fuctions on the device [\#8730](https://github.com/kokkos/kokkos/pull/8730)
* Make overloads of `isnormal` compliant with std [\#8857](https://github.com/kokkos/kokkos/pull/8857)
* Fix compiler macros identify GCC and LLVM Clang on OSX [\#8592](https://github.com/kokkos/kokkos/pull/8592) [\#8952](https://github.com/kokkos/kokkos/pull/8952)

## 5.0.2

[Full Changelog](https://github.com/kokkos/kokkos/compare/5.0.1...5.0.2)
Expand Down Expand Up @@ -112,6 +168,15 @@
* Work around a performance regression related to index computation in the mdspan-based View [\#8476](https://github.com/kokkos/kokkos/pull/8476)
* Fix a failure at configure time when SVE is enabled and the tests are disabled [\#8661](https://github.com/kokkos/kokkos/pull/8661)

## 4.7.02

[Full Changelog](https://github.com/kokkos/kokkos/compare/4.7.01...4.7.02)

### Bug Fixes
* Link kokkoscore directly with CMAKE_DL_LIBS [\#8456](https://github.com/kokkos/kokkos/pull/8456)
* mdspan fixes for cuda >= 12.9 [\#8562](https://github.com/kokkos/kokkos/pull/8562), [\#8615](https://github.com/kokkos/kokkos/pull/8615)
* Replace cudaMemAdvise_v2 with cudaMemAdvise when CUDART_VERSION >= 13000 [\#8726](https://github.com/kokkos/kokkos/pull/8726)

## 4.7.01

[Full Changelog](https://github.com/kokkos/kokkos/compare/4.7.00...4.7.01)
Expand Down
8 changes: 6 additions & 2 deletions lib/kokkos/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -140,8 +140,8 @@ elseif(NOT CMAKE_SIZEOF_VOID_P EQUAL 8)
endif()

set(Kokkos_VERSION_MAJOR 5)
set(Kokkos_VERSION_MINOR 0)
set(Kokkos_VERSION_PATCH 2)
set(Kokkos_VERSION_MINOR 1)
set(Kokkos_VERSION_PATCH 99)
set(Kokkos_VERSION "${Kokkos_VERSION_MAJOR}.${Kokkos_VERSION_MINOR}.${Kokkos_VERSION_PATCH}")
message(STATUS "Kokkos version: ${Kokkos_VERSION}")
math(EXPR KOKKOS_VERSION "${Kokkos_VERSION_MAJOR} * 10000 + ${Kokkos_VERSION_MINOR} * 100 + ${Kokkos_VERSION_PATCH}")
Expand Down Expand Up @@ -191,6 +191,10 @@ if(Kokkos_ENABLE_TESTS)
find_package(GTest QUIET)
endif()

if(Kokkos_ENABLE_BENCHMARKS)
find_package(benchmark QUIET 1.8.3)
endif()

# Include a set of Kokkos-specific wrapper functions that
# will either call raw CMake or TriBITS
# These are functions like KOKKOS_INCLUDE_DIRECTORIES
Expand Down
1 change: 0 additions & 1 deletion lib/kokkos/COPYRIGHT.md
Original file line number Diff line number Diff line change
Expand Up @@ -203,4 +203,3 @@ Date Range: 2022-09-20 -- 2019-06-24
- Scott Kruger; OTHER; scott.e.kruger@gmail.com
- Christoph Junghans; OTHER; junghans@votca.org
- Daniel Holladay; OTHER; dholladay00@lanl.gov

2 changes: 1 addition & 1 deletion lib/kokkos/LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Questions? Contact:
Questions? Contact:
Christian R. Trott (crtrott@sandia.gov) and
Damien T. Lebrun-Grandie (lebrungrandt@ornl.gov)

Expand Down
2 changes: 1 addition & 1 deletion lib/kokkos/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ To start learning about Kokkos:

- [Programming guide](https://kokkos.org/kokkos-core-wiki/programmingguide.html): contains in "narrative" form a technical description of the programming model, machine model, and the main building blocks like the Views and parallel dispatch.

- [API reference](https://kokkos.org/kokkos-core-wiki/): organized by category, i.e., [core](https://kokkos.org/kokkos-core-wiki/API/core-index.html), [algorithms](https://kokkos.org/kokkos-core-wiki/API/algorithms-index.html) and [containers](https://kokkos.org/kokkos-core-wiki/API/containers-index.html) or, if you prefer, in [alphabetical order](https://kokkos.org/kokkos-core-wiki/API/alphabetical.html).
- [API reference](https://kokkos.org/kokkos-core-wiki/): organized by category, i.e., [core](https://kokkos.org/kokkos-core-wiki/API/core-index.html), [algorithms](https://kokkos.org/kokkos-core-wiki/API/algorithms-index.html), [containers](https://kokkos.org/kokkos-core-wiki/API/containers-index.html), and [simd](https://kokkos.org/kokkos-core-wiki/API/simd-index.html).

- [Use cases and Examples](https://kokkos.org/kokkos-core-wiki/tutorials-and-examples/use-cases-and-examples.html): a serie of examples ranging from how to use Kokkos with MPI to Fortran interoperability.

Expand Down
6 changes: 2 additions & 4 deletions lib/kokkos/algorithms/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@ if(NOT Kokkos_INSTALL_TESTING)
add_subdirectory(src)
endif()
# FIXME_OPENACC: temporarily disabled due to unimplemented features
if(NOT ((KOKKOS_ENABLE_OPENMPTARGET AND KOKKOS_CXX_COMPILER_ID STREQUAL NVHPC) OR KOKKOS_ENABLE_OPENACC))
if(NOT KOKKOS_ENABLE_OPENACC)
kokkos_add_test_directories(unit_tests)
endif()

if(Kokkos_ENABLE_BENCHMARKS)
add_subdirectory(perf_test)
endif()
kokkos_add_benchmark_directories(perf_test)
62 changes: 0 additions & 62 deletions lib/kokkos/algorithms/perf_test/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,64 +1,2 @@
# FIXME: The following logic should be moved from here and also from `core/perf_test/CMakeLists.txt` to
# the root `CMakeLists.txt` in the form of a macro
# Find or download google/benchmark library
find_package(benchmark QUIET 1.8.3)
if(benchmark_FOUND)
message(STATUS "Using google benchmark found in ${benchmark_DIR}")
else()
message(STATUS "No installed google benchmark found, fetching from GitHub")
include(FetchContent)
set(BENCHMARK_ENABLE_TESTING OFF)

list(APPEND CMAKE_MESSAGE_INDENT "[benchmark] ")
FetchContent_Declare(
googlebenchmark
DOWNLOAD_EXTRACT_TIMESTAMP FALSE
URL https://github.com/google/benchmark/archive/refs/tags/v1.8.3.tar.gz
URL_HASH MD5=7b93dd03670665684f1b2e9b70ad17fe
)
FetchContent_MakeAvailable(googlebenchmark)
list(POP_BACK CMAKE_MESSAGE_INDENT)

# Suppress clang-tidy diagnostics on code that we do not have control over
if(CMAKE_CXX_CLANG_TIDY)
set_target_properties(benchmark PROPERTIES CXX_CLANG_TIDY "")
endif()

# FIXME: Check whether the following target_compile_options are needed.
# If so, clarify why.
target_compile_options(benchmark PRIVATE -w)
target_compile_options(benchmark_main PRIVATE -w)
endif()

# FIXME: This function should be moved from here and also from `core/perf_test/CMakeLists.txt` to
# the root `CMakeLists.txt`
# FIXME: Could NAME be a one_value_keyword specified in cmake_parse_arguments?
function(KOKKOS_ADD_BENCHMARK NAME)
cmake_parse_arguments(BENCHMARK "" "" "SOURCES" ${ARGN})
if(DEFINED BENCHMARK_UNPARSED_ARGUMENTS)
message(WARNING "Unexpected arguments when adding a benchmark: " ${BENCHMARK_UNPARSED_ARGUMENTS})
endif()

set(BENCHMARK_NAME Kokkos_${NAME})
# FIXME: BenchmarkMain.cpp and Benchmark_Context.cpp should be moved to a common location from which
# they can be used by all performance tests.
list(APPEND BENCHMARK_SOURCES ../../core/perf_test/BenchmarkMain.cpp ../../core/perf_test/Benchmark_Context.cpp)

add_executable(${BENCHMARK_NAME} ${BENCHMARK_SOURCES})
target_link_libraries(${BENCHMARK_NAME} PRIVATE benchmark::benchmark Kokkos::kokkos impl_git_version)
target_include_directories(${BENCHMARK_NAME} SYSTEM PRIVATE ${benchmark_SOURCE_DIR}/include)

# FIXME: This alone will not work. It might need an architecture and standard which need to be defined on target level.
# It will potentially go away with #7582.
foreach(SOURCE_FILE ${BENCHMARK_SOURCES})
set_source_files_properties(${SOURCE_FILE} PROPERTIES LANGUAGE ${KOKKOS_COMPILE_LANGUAGE})
endforeach()

string(TIMESTAMP BENCHMARK_TIME "%Y-%m-%d_T%H-%M-%S" UTC)
set(BENCHMARK_ARGS --benchmark_counters_tabular=true --benchmark_out=${BENCHMARK_NAME}_${BENCHMARK_TIME}.json)

add_test(NAME ${BENCHMARK_NAME} COMMAND ${BENCHMARK_NAME} ${BENCHMARK_ARGS})
endfunction()

kokkos_add_benchmark(PerformanceTest_InclusiveScan SOURCES test_inclusive_scan.cpp)
kokkos_add_benchmark(PerformanceTest_Random SOURCES test_random.cpp)
41 changes: 1 addition & 40 deletions lib/kokkos/algorithms/src/Kokkos_Random.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ namespace Kokkos {
Pool(const execution_space& exec, uint64_t seed);

//Initializing constructor
//Initialize Pool with seed as a starting seed with a pool_size of num_states using the
//Initialize Pool with seed as a starting seed with a pool_size of num_states using the
//specified execution space instance
Pool(const execution_space& exec, uint64_t seed, uint64_t num_states);

Expand Down Expand Up @@ -611,11 +611,6 @@ struct Random_XorShift1024_UseCArrayState<Kokkos::Cuda> : std::false_type {};
template <>
struct Random_XorShift1024_UseCArrayState<Kokkos::HIP> : std::false_type {};
#endif
#ifdef KOKKOS_ENABLE_OPENMPTARGET
template <>
struct Random_XorShift1024_UseCArrayState<Kokkos::Experimental::OpenMPTarget>
: std::false_type {};
#endif
#ifdef KOKKOS_ENABLE_OPENACC
template <>
struct Random_XorShift1024_UseCArrayState<Kokkos::Experimental::OpenACC>
Expand Down Expand Up @@ -716,28 +711,6 @@ struct Random_UniqueIndex<Kokkos::Device<Kokkos::SYCL, MemorySpace>> {
};
#endif

#ifdef KOKKOS_ENABLE_OPENMPTARGET
template <class MemorySpace>
struct Random_UniqueIndex<
Kokkos::Device<Kokkos::Experimental::OpenMPTarget, MemorySpace>> {
using locks_view_type =
View<int**,
Kokkos::Device<Kokkos::Experimental::OpenMPTarget, MemorySpace>>;
KOKKOS_FUNCTION
static int get_state_idx(const locks_view_type& locks) {
const int team_size = omp_get_num_threads();
int i = omp_get_team_num() * team_size + omp_get_thread_num();
const int lock_size = locks.extent_int(0);

i %= lock_size;
while (Kokkos::atomic_compare_exchange(&locks(i, 0), 0, 1)) {
i = (i + 1) % lock_size;
}
return i;
}
};
#endif

#ifdef KOKKOS_ENABLE_OPENACC
template <class MemorySpace>
struct Random_UniqueIndex<
Expand Down Expand Up @@ -934,12 +907,6 @@ class Random_XorShift64_Pool {

#ifdef KOKKOS_ENABLE_DEPRECATED_CODE_4
KOKKOS_DEFAULTED_FUNCTION Random_XorShift64_Pool() = default;

KOKKOS_DEFAULTED_FUNCTION Random_XorShift64_Pool(
Random_XorShift64_Pool const&) = default;

KOKKOS_DEFAULTED_FUNCTION Random_XorShift64_Pool& operator=(
Random_XorShift64_Pool const&) = default;
#else
Random_XorShift64_Pool() = default;
#endif
Expand Down Expand Up @@ -1214,12 +1181,6 @@ class Random_XorShift1024_Pool {

#ifdef KOKKOS_ENABLE_DEPRECATED_CODE_4
KOKKOS_DEFAULTED_FUNCTION Random_XorShift1024_Pool() = default;

KOKKOS_DEFAULTED_FUNCTION Random_XorShift1024_Pool(
Random_XorShift1024_Pool const&) = default;

KOKKOS_DEFAULTED_FUNCTION Random_XorShift1024_Pool& operator=(
Random_XorShift1024_Pool const&) = default;
#else
Random_XorShift1024_Pool() = default;
#endif
Expand Down
8 changes: 0 additions & 8 deletions lib/kokkos/algorithms/src/sorting/Kokkos_BinOpsPublicAPI.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,7 @@ struct BinOp1D {
double mul_ = {};
double min_ = {};

#ifdef KOKKOS_ENABLE_DEPRECATED_CODE_4
KOKKOS_DEPRECATED BinOp1D() = default;
#else
BinOp1D() = delete;
#endif

// Construct BinOp with number of bins, minimum value and maximum value
BinOp1D(int max_bins, typename KeyViewType::const_value_type min,
Expand Down Expand Up @@ -63,11 +59,7 @@ struct BinOp3D {
double mul_[3] = {};
double min_[3] = {};

#ifdef KOKKOS_ENABLE_DEPRECATED_CODE_4
KOKKOS_DEPRECATED BinOp3D() = default;
#else
BinOp3D() = delete;
#endif

BinOp3D(int max_bins[], typename KeyViewType::const_value_type min[],
typename KeyViewType::const_value_type max[]) {
Expand Down
4 changes: 0 additions & 4 deletions lib/kokkos/algorithms/src/sorting/Kokkos_BinSortPublicAPI.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -136,11 +136,7 @@ class BinSort {
bool sort_within_bins;

public:
#ifdef KOKKOS_ENABLE_DEPRECATED_CODE_4
KOKKOS_DEPRECATED BinSort() = default;
#else
BinSort() = delete;
#endif

//----------------------------------------
// Constructor: takes the keys, the binning_operator and optionally whether to
Expand Down
Loading