Skip to content
Open
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,10 @@ target_include_directories(ClueGaudiAlgorithmWrapper PUBLIC

target_link_libraries(ClueGaudiAlgorithmWrapper PUBLIC clue::CLUEstering)

if(CLUEstering_VERSION VERSION_LESS 2.12.0)
target_compile_definitions(ClueGaudiAlgorithmWrapper PRIVATE K4CLUE_USE_CLUESTERING_POINTS_PER_TILE)
endif()

target_compile_options(ClueGaudiAlgorithmWrapper PUBLIC
-DALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLED
-DALPAKA_ACC_CPU_B_SEQ_T_SEQ_SYNC_BACKEND
Expand Down Expand Up @@ -89,6 +93,10 @@ if(CMAKE_CUDA_COMPILER)

target_link_libraries(ClueGaudiAlgorithmWrapperCUDA PUBLIC clue::CLUEstering)

if(CLUEstering_VERSION VERSION_LESS 2.12.0)
target_compile_definitions(ClueGaudiAlgorithmWrapperCUDA PRIVATE K4CLUE_USE_CLUESTERING_POINTS_PER_TILE)
endif()

set_target_properties(ClueGaudiAlgorithmWrapperCUDA PROPERTIES
CUDA_STANDARD 20
CXX_STANDARD 20
Expand Down Expand Up @@ -120,6 +128,10 @@ if(CMAKE_HIP_COMPILER)

target_link_libraries(ClueGaudiAlgorithmWrapperHIP PUBLIC clue::CLUEstering)

if(CLUEstering_VERSION VERSION_LESS 2.12.0)
target_compile_definitions(ClueGaudiAlgorithmWrapperHIP PRIVATE K4CLUE_USE_CLUESTERING_POINTS_PER_TILE)
endif()

set_source_files_properties(${GPU_LANGUAGE_SOURCES} PROPERTIES LANGUAGE HIP)

target_compile_options(ClueGaudiAlgorithmWrapperHIP PUBLIC
Expand Down
7 changes: 5 additions & 2 deletions src/ClueGaudiAlgorithmWrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,11 @@ StatusCode ClueGaudiAlgorithmWrapper<nDim>::initialize() {
const auto seeding_distance = (m_seed_dc < 0.f) ? m_dc : m_seed_dc;
const auto outlier_distance = (m_dm < 0.f) ? m_dc : m_dm;
auto start = std::chrono::high_resolution_clock::now();
m_clueAlgo = std::make_optional<clue::Clusterer<nDim>>(*m_queue, m_dc, m_rhoc, outlier_distance, seeding_distance,
m_pointsPerBin);
#if defined(K4CLUE_USE_CLUESTERING_POINTS_PER_TILE)
m_clueAlgo.emplace(*m_queue, m_dc, m_rhoc, outlier_distance, seeding_distance, m_pointsPerBin);
#else
m_clueAlgo.emplace(*m_queue, m_dc, m_rhoc, outlier_distance, seeding_distance);
#endif
auto finish = std::chrono::high_resolution_clock::now();
std::chrono::duration<double> elapsed = finish - start;
debug() << "ClueGaudiAlgorithmWrapper: Set up time: " << elapsed.count() * 1000 << " ms" << endmsg;
Expand Down
2 changes: 2 additions & 0 deletions src/ClueGaudiAlgorithmWrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -96,8 +96,10 @@ struct ClueGaudiAlgorithmWrapper final
Gaudi::Property<float> m_seed_dc{this, "SeedCriticalDistance", -1.0f,
"Distance used to compute the local density of a point"};

#if defined(K4CLUE_USE_CLUESTERING_POINTS_PER_TILE)
Gaudi::Property<int> m_pointsPerBin{this, "PointsPerBin", 10,
"Average number of points that are to be found inside a bin"};
#endif

Gaudi::Property<std::string> m_CLUECaloHitCollName{this, "CLUEHitCollName", "CLUECalorimeterHitCollection",
"Name of the collection of CLUE calorimeter hits"};
Expand Down
Loading