Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
8affc7f
Fix type deduction compilation error in subview wrapper
G-071 Jun 4, 2026
4e1a534
Launch slices immediately once enough team members arrive
G-071 Jun 4, 2026
684f2b7
Add allocator for managed memory
G-071 Jul 2, 2026
cbf68bd
Better debug informations
G-071 Jul 2, 2026
42500a3
initital attempt to introduce buffer map
G-071 Jul 2, 2026
b48c855
Fix number of elements hint
G-071 Jul 3, 2026
43acba9
Add cuda gemm benchmark initial version
G-071 Aug 14, 2026
8ccd79f
Format fixes 1
G-071 Aug 21, 2026
4cb20a3
Format fixes 2
G-071 Aug 21, 2026
0cadbbd
Split benchmark files
G-071 Aug 22, 2026
8fcc2f7
Make concise
G-071 Aug 31, 2026
dffc07e
Create separate benchmark method
G-071 Sep 8, 2026
e7da458
Update tests
G-071 Sep 14, 2026
8ed2a79
Split into multiple methods
G-071 Sep 14, 2026
7784d71
Merge branch 'master' into add_fusion_benchmarks
G-071 Sep 18, 2026
71a27ed
Fix benchmark error
G-071 Sep 18, 2026
dd4f499
Comment out old benchmarks for now
G-071 Oct 14, 2026
087d6f7
Add benchmark parameters
G-071 Oct 14, 2026
1a4895b
Reuse reference data when available
G-071 Oct 14, 2026
300c87a
Add recursion for graphs
G-071 Oct 15, 2026
aee1101
Add hpx_main to benchmark
G-071 Oct 15, 2026
434aa57
Debugging slow futurized version
G-071 Oct 19, 2026
20d4cd3
Re-added cublas
G-071 Oct 19, 2026
ad7a2a2
Have two versions: futurized and none-futurized
G-071 Oct 21, 2026
d0db572
Add parameter struct
G-071 Oct 22, 2026
608a5f5
Add futurization mode
G-071 Oct 30, 2026
66bc485
Fix enums
G-071 Oct 30, 2026
2a43191
Merge branch 'introduce_unused_buffer_map' into add_fusion_benchmarks
G-071 Oct 30, 2026
157d740
Add required copyright notices
G-071 Oct 30, 2026
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
31 changes: 21 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -252,30 +252,41 @@ install(FILES cppuddle-config.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmak
install(EXPORT CPPuddle NAMESPACE CPPuddle:: DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/cmake/CPPuddle/)

#Boost::boost Boost::program_options HPX::hpx Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
if (CPPUDDLE_WITH_CUDA)
add_hpx_executable(
cuda_gemm_fusion_experiments
DEPENDENCIES
Boost::boost Boost::program_options atomic Kokkos::kokkos HPXKokkos::hpx_kokkos HPX::hpx buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
benchmarks/cuda_gemm_fusion_experiments.cpp
)
endif()

if (CPPUDDLE_WITH_TESTS)
if (CPPUDDLE_WITH_CUDA)
add_hpx_executable(
recycling-with-hpx-cuda
DEPENDENCIES
Boost::boost Boost::program_options HPX::hpx buffer_manager stream_manager
Boost::boost Boost::program_options atomic Kokkos::kokkos HPXKokkos::hpx_kokkos HPX::hpx buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
examples/recycling-with-hpx-cuda.cu
examples/recycling-with-hpx-cuda.cpp
)

if (CPPUDDLE_WITH_KOKKOS)
add_hpx_executable(
recycling-with-hpx-kokkos
DEPENDENCIES
Boost::boost Boost::program_options Kokkos::kokkos HPXKokkos::hpx_kokkos HPX::hpx buffer_manager stream_manager
Boost::boost Boost::program_options atomic Kokkos::kokkos HPXKokkos::hpx_kokkos HPX::hpx buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
examples/recycling-with-hpx-kokkos.cpp
)
add_hpx_executable(
kernel-aggregation-with-hpx-kokkos
DEPENDENCIES
Boost::boost Boost::program_options Kokkos::kokkos HPXKokkos::hpx_kokkos HPX::hpx buffer_manager stream_manager
Boost::boost Boost::program_options atomic Kokkos::kokkos HPXKokkos::hpx_kokkos HPX::hpx buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
examples/kernel-aggregation-with-hpx-kokkos.cpp
Expand Down Expand Up @@ -320,7 +331,7 @@ if (CPPUDDLE_WITH_TESTS)

add_executable(allocator_cuda_test tests/allocator_cuda_test.cu)
target_link_libraries(allocator_cuda_test
PRIVATE Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager)
PRIVATE atomic Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager)
target_compile_definitions(allocator_cuda_test PRIVATE CPPUDDLE_HAVE_CUDA)

add_executable(
Expand All @@ -338,13 +349,13 @@ if (CPPUDDLE_WITH_TESTS)
tests/allocator_kokkos_test.cpp
include/buffer_manager.hpp)
target_link_libraries(allocator_kokkos_test
PRIVATE Boost::boost Boost::program_options HPX::hpx Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager)
PRIVATE Boost::boost Boost::program_options HPX::hpx atomic Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager)
target_compile_definitions(allocator_kokkos_test PRIVATE HPX_WITH_CUDA CPPUDDLE_HAVE_CUDA)

add_hpx_executable(
allocator_kokkos_executor_for_loop_test
DEPENDENCIES
HPX::hpx Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager
HPX::hpx atomic Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager
SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/tests/allocator_kokkos_executor_for_loop_test.cpp)
# target_link_libraries(allocator_kokkos_executor_for_loop_test
Expand All @@ -354,7 +365,7 @@ if (CPPUDDLE_WITH_TESTS)
add_hpx_executable(
work_aggregation_test
DEPENDENCIES
Boost::boost Boost::program_options HPX::hpx Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
Boost::boost Boost::program_options HPX::hpx atomic Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
tests/work_aggregation_test.cpp
Expand All @@ -363,7 +374,7 @@ if (CPPUDDLE_WITH_TESTS)
add_hpx_executable(
work_aggregation_cpu_triad
DEPENDENCIES
Boost::boost Boost::program_options HPX::hpx Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
Boost::boost Boost::program_options HPX::hpx atomic Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
tests/work_aggregation_cpu_triad.cpp
Expand All @@ -372,7 +383,7 @@ if (CPPUDDLE_WITH_TESTS)
add_hpx_executable(
work_aggregation_cuda_triad
DEPENDENCIES
Boost::boost Boost::program_options HPX::hpx Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
Boost::boost Boost::program_options HPX::hpx atomic Kokkos::kokkos HPXKokkos::hpx_kokkos buffer_manager stream_manager
COMPONENT_DEPENDENCIES iostreams
SOURCES
tests/work_aggregation_cuda_triad.cpp
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,8 @@ find_package(CPPuddle REQUIRED)
cmake -H/path/to/source -B$/path/to/build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/path/to/install/cppuddle -DCPPUDDLE_WITH_HPX=ON -DCPPUDDLE_WITH_HPX_AWARE_ALLOCATORS=ON -DCPPUDDLE_WITH_TESTS=OFF -DCPPUDDLE_WITH_COUNTERS=OFF
```

#### Disclosure

CPPuddle contains contributions developed at Los Alamos National Laboratory (LANL).
LANL software approval number: O5227

Loading
Loading