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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion GPU/GPUTracking/Definitions/GPUSettingsList.h
Original file line number Diff line number Diff line change
Expand Up @@ -521,7 +521,7 @@ AddOption(outputcontrolmem, uint64_t, 0, "outputMemory", 0, "Use predefined outp
AddOption(inputcontrolmem, uint64_t, 0, "inputMemory", 0, "Use predefined input buffer of this size", min(0ul), message("Using %s bytes as input memory"))
AddOption(cpuAffinity, int32_t, -1, "", 0, "Pin CPU affinity to this CPU core", min(-1))
AddOption(fifoScheduler, bool, false, "", 0, "Use FIFO realtime scheduler", message("Setting FIFO scheduler: %s"))
AddOption(fpe, bool, true, "", 0, "Trap on floating point exceptions")
AddOption(fpe, int8_t, -1, "", 0, "Trap on floating point exceptions (-1 = if no ffast-math)")
AddOption(flushDenormals, bool, true, "", 0, "Enable FTZ and DAZ (Flush all denormals to zero)")
AddOption(solenoidBzNominalGPU, float, -1e6f, "", 0, "Field strength of solenoid Bz in kGaus")
AddOption(constBz, bool, false, "", 0, "Force constand Bz")
Expand Down
4 changes: 2 additions & 2 deletions GPU/GPUTracking/Standalone/Benchmark/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ if(ALIGPU_BUILD_TYPE STREQUAL "O2")
TARGETVARNAME targetName
PUBLIC_LINK_LIBRARIES O2::GPUO2Interface O2::GPUTracking
SOURCES ${SRCS})

target_compile_definitions(${targetName} PUBLIC $<TARGET_PROPERTY:O2::GPUTracking,COMPILE_DEFINITIONS>)
endif()

if(ALIGPU_BUILD_TYPE STREQUAL "Standalone")
add_executable(ca ${SRCS})
set(targetName ca)
endif()

target_compile_definitions(${targetName} PUBLIC $<TARGET_PROPERTY:O2::GPUTracking,COMPILE_DEFINITIONS>)

if(ROOT_FOUND)
target_sources(${targetName} PRIVATE ../../qa/genEvents.cxx)
endif()
6 changes: 5 additions & 1 deletion GPU/GPUTracking/Standalone/Benchmark/standalone.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,11 @@ int32_t ReadConfiguration(int argc, char** argv)
return 1;
}
}
#ifdef __FAST_MATH__
if (configStandalone.fpe == 1) {
#else
if (configStandalone.fpe) {
#endif
feenableexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW);
}
if (configStandalone.flushDenormals) {
Expand All @@ -158,7 +162,7 @@ int32_t ReadConfiguration(int argc, char** argv)
printf("FIFO Scheduler setting not supported on Windows\n");
return 1;
}
if (configStandalone.fpe) {
if (configStandalone.fpe == 1) {
printf("FPE not supported on Windows\n");
return 1;
}
Expand Down
70 changes: 27 additions & 43 deletions GPU/GPUTracking/Standalone/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -187,40 +187,33 @@ include_directories(${GPU_DIR}/Common
# Create main targets
add_subdirectory(../../ GPU)
add_library(standalone_support SHARED ${GPUTRACKING_DIR}/utils/EmptyFile.cxx)
target_compile_definitions(standalone_support PUBLIC $<TARGET_PROPERTY:O2::GPUTracking,COMPILE_DEFINITIONS>)

target_link_libraries(GPUTracking PUBLIC TPCFastTransformation standalone_support dl)
target_link_libraries(standalone_support PUBLIC#
dl
pthread
Microsoft.GSL::GSL
TPCFastTransformation)
target_link_libraries(GPUTracking PUBLIC TPCFastTransformation standalone_support)
target_link_libraries(ca PUBLIC GPUTracking)
target_link_libraries(standalone_support PUBLIC dl pthread)
target_compile_definitions(ca PUBLIC $<TARGET_PROPERTY:O2::GPUTracking,COMPILE_DEFINITIONS>)
target_compile_definitions(standalone_support PUBLIC $<TARGET_PROPERTY:O2::GPUTracking,COMPILE_DEFINITIONS>)

# Add all sources and dependencies to to support based on Config File
target_sources(standalone_support PRIVATE
${O2_DIR}/Common/Field/src/MagFieldFast.cxx
${O2_DIR}/DataFormats/Detectors/TPC/src/CompressedClusters.cxx
${O2_DIR}/DataFormats/simulation/src/MCCompLabel.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrization.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx
${O2_DIR}/DataFormats/Reconstruction/src/Vertex.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackLTIntegral.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrization.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx
${O2_DIR}/Detectors/TRD/base/src/GeometryBase.cxx
${O2_DIR}/Detectors/Base/src/MatLayerCylSet.cxx
${O2_DIR}/Detectors/Base/src/MatLayerCyl.cxx
${O2_DIR}/Detectors/Base/src/Ray.cxx
${O2_DIR}/Detectors/Base/src/Propagator.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/Road.cxx)
if(CONFIG_O2_ITS_TRAITS)
target_sources(standalone_support PRIVATE
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/PrimaryVertexContext.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/Cluster.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/ClusterLines.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/TrackerTraitsCPU.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/VertexerTraits.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/ROframe.cxx)
target_link_libraries(standalone_support PUBLIC Boost::boost)
endif()
${O2_DIR}/Common/Field/src/MagFieldFast.cxx
${O2_DIR}/DataFormats/Detectors/TPC/src/CompressedClusters.cxx
${O2_DIR}/DataFormats/simulation/src/MCCompLabel.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrization.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx
${O2_DIR}/DataFormats/Reconstruction/src/Vertex.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackLTIntegral.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrization.cxx
${O2_DIR}/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx
${O2_DIR}/Detectors/TRD/base/src/GeometryBase.cxx
${O2_DIR}/Detectors/Base/src/MatLayerCylSet.cxx
${O2_DIR}/Detectors/Base/src/MatLayerCyl.cxx
${O2_DIR}/Detectors/Base/src/Ray.cxx
${O2_DIR}/Detectors/Base/src/Propagator.cxx
${O2_DIR}/Detectors/ITSMFT/ITS/tracking/src/Road.cxx)

if(GPUCA_CONFIG_FMT)
target_link_libraries(standalone_support PUBLIC fmt::fmt)
Expand All @@ -232,23 +225,14 @@ if(GPUCA_CONFIG_VC)
target_link_libraries(TPCFastTransformation PUBLIC Vc::Vc)
endif()

if(GPUCA_BUILD_EVENT_DISPLAY)
if(GPUCA_CONFIG_GL3W)
target_sources(GPUTrackingDisplay PRIVATE ${GPUTRACKING_DIR}/display/3rdparty/gl3w.c)
endif()
target_sources(GPUTracking PRIVATE ${GPUTRACKING_DIR}/display/3rdparty/HandMadeMath/HandMadeMathImpl.cxx)
target_include_directories(GPUTracking SYSTEM PUBLIC ${GPUTRACKING_DIR}/display/3rdparty)
endif()

if(GPUCA_CONFIG_ROOT)
target_link_libraries(standalone_support PUBLIC
ROOT::Core
ROOT::RIO
ROOT::Hist
ROOT::Gui
ROOT::Tree)
ROOT::Core
ROOT::RIO
ROOT::Hist
ROOT::Gui
ROOT::Tree)
endif()
target_link_libraries(standalone_support PUBLIC Microsoft.GSL::GSL TPCFastTransformation)

if (GPUCA_BUILD_DEBUG_SANITIZE AND CMAKE_CXX_COMPILER MATCHES "clang\\+\\+")
execute_process(COMMAND ${CMAKE_CXX_COMPILER} -print-file-name=libclang_rt.asan-x86_64.so OUTPUT_VARIABLE CLANG_ASAN_SO_PATH OUTPUT_STRIP_TRAILING_WHITESPACE)
Expand Down
3 changes: 3 additions & 0 deletions GPU/GPUTracking/display/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -179,9 +179,12 @@ if(ALIGPU_BUILD_TYPE STREQUAL "Standalone")
endif()
if(GPUCA_CONFIG_GL3W)
target_compile_definitions(${targetName} PRIVATE GPUCA_DISPLAY_GL3W)
target_sources(${targetName} PRIVATE ${GPUTRACKING_DIR}/display/3rdparty/gl3w.c)
else()
target_link_libraries(${targetName} PRIVATE ${GLEW_LIBRARIES})
endif()
target_sources(${targetName} PRIVATE ${GPUTRACKING_DIR}/display/3rdparty/HandMadeMath/HandMadeMathImpl.cxx)
target_include_directories(${targetName} SYSTEM PUBLIC ${GPUTRACKING_DIR}/display/3rdparty)
endif()

if (OPENGL_GLU_FOUND)
Expand Down