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/Common/GPUCommonDef.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
//Some GPU configuration settings, must be included first
#include "GPUCommonDefSettings.h"

#if !(defined(__CLING__) || defined(__ROOTCLING__) || defined(G__ROOT)) // No GPU code for ROOT
#if !defined(__CLING__) && !defined(G__ROOT) // No GPU code for ROOT
#if defined(__CUDACC__) || defined(__OPENCL__) || defined(__HIPCC__) || defined(__OPENCL_HOST__)
#define GPUCA_GPUCODE // Compiled by GPU compiler
#endif
Expand Down
2 changes: 1 addition & 1 deletion GPU/Common/GPUCommonMath.h
Original file line number Diff line number Diff line change
Expand Up @@ -521,7 +521,7 @@ GPUdi() void GPUCommonMath::AtomicMinInternal(S* addr, T val)
#endif // GPUCA_GPUCODE
}

#if (defined(__CUDACC__) || defined(__HIPCC__)) && !defined(G__ROOT)
#if (defined(__CUDACC__) || defined(__HIPCC__)) && !defined(G__ROOT) && !defined(__CLING__)
#define GPUCA_HAVE_ATOMIC_MINMAX_FLOAT
template <>
GPUdii() void GPUCommonMath::AtomicMaxInternal(GPUglobalref() GPUgeneric() GPUAtomic(float) * addr, float val)
Expand Down
10 changes: 9 additions & 1 deletion GPU/GPUTracking/Standalone/Benchmark/standalone.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,14 @@ int32_t ReadConfiguration(int argc, char** argv)
configStandalone.rec.tpc.nWaysOuter = 1;
configStandalone.rec.tpc.trackReferenceX = 83;
configStandalone.proc.outputSharedClusterMap = 1;
configStandalone.proc.clearO2OutputFromGPU = 1;
configStandalone.QA.clusterRejectionHistograms = 1;
configStandalone.proc.tpcIncreasedMinClustersPerRow = 500000;
configStandalone.proc.ignoreNonFatalGPUErrors = 1;
// TODO: rundEdx=1
// GPU_proc.qcRunFraction=$TPC_TRACKING_QC_RUN_FRACTION;"
// [[ $CTFINPUT == 1 ]] && GPU_CONFIG_KEY+="GPU_proc.tpcInputWithClusterRejection=1;"
// double pipeline / rtc
}

if (configStandalone.outputcontrolmem) {
Expand Down Expand Up @@ -893,7 +901,7 @@ int32_t main(int argc, char** argv)
double pipelineWalltime = 1.;
if (configStandalone.proc.doublePipeline) {
HighResTimer timerPipeline;
if (RunBenchmark(rec, chainTracking, 1, iEvent, &nTracksTotal, &nClustersTotal) || RunBenchmark(recPipeline, chainTrackingPipeline, 2, iEvent, &nTracksTotal, &nClustersTotal)) {
if (configStandalone.proc.debugLevel < 2 && (RunBenchmark(rec, chainTracking, 1, iEvent, &nTracksTotal, &nClustersTotal) || RunBenchmark(recPipeline, chainTrackingPipeline, 2, iEvent, &nTracksTotal, &nClustersTotal))) {
goto breakrun;
}
auto pipeline1 = std::async(std::launch::async, RunBenchmark, rec, chainTracking, configStandalone.runs, iEvent, &nTracksTotal, &nClustersTotal, 0, &timerPipeline);
Expand Down
7 changes: 6 additions & 1 deletion GPU/GPUTracking/Standalone/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,12 @@ if (GPUCA_BUILD_DEBUG_SANITIZE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -shared-libasan")
endif()
endif()
string(APPEND CMAKE_CXX_FLAGS " -Wno-error -Wall -Wextra -Wshadow -Wno-unused-function -Wno-unused-parameter -Wno-unused-local-typedefs -Wno-unknown-pragmas -Wno-write-strings")
if(GPUCA_CONFIG_WERROR)
string(APPEND CMAKE_CXX_FLAGS " -Werror -Wno-unknown-warning-option")
else()
string(APPEND CMAKE_CXX_FLAGS " -Wno-error")
endif()
string(APPEND CMAKE_CXX_FLAGS " -Wall -Wextra -Wshadow -Wno-unused-function -Wno-unused-parameter -Wno-unused-local-typedefs -Wno-unknown-pragmas -Wno-write-strings")
string(APPEND CMAKE_SHARED_LINKER_FLAGS " -rdynamic -Wl,--no-undefined")
if(CMAKE_CXX_COMPILER MATCHES "clang\\+\\+")
string(APPEND CMAKE_CXX_FLAGS " -Wno-vla-cxx-extension")
Expand Down
15 changes: 9 additions & 6 deletions GPU/GPUTracking/Standalone/cmake/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,16 @@ set -e
mkdir -p standalone/build
pushd standalone/build
cp $1/GPU/GPUTracking/Standalone/cmake/config.cmake .
cat >> config.cmake << "EOF"
set(ENABLE_CUDA 1)
set(ENABLE_HIP 1)
set(ENABLE_OPENCL 1)
set(GPUCA_CONFIG_ONNX 1)
set(GPUCA_BUILD_EVENT_DISPLAY 0)
if [[ $GPUCA_STANDALONE_CI == 1 ]]; then
cat >> config.cmake << "EOF"
set(ENABLE_CUDA 1)
set(ENABLE_HIP 1)
set(ENABLE_OPENCL 1)
set(GPUCA_CONFIG_ONNX 1)
set(GPUCA_BUILD_EVENT_DISPLAY 0)
set(GPUCA_CONFIG_WERROR 1)
EOF
fi
cmake -DCMAKE_INSTALL_PREFIX=../ $1/GPU/GPUTracking/Standalone
make ${JOBS+-j $JOBS} install
popd
1 change: 1 addition & 0 deletions GPU/GPUTracking/Standalone/cmake/config.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,5 @@ set(CUDA_COMPUTETARGET "default") # 86 89
#set(GPUCA_RTC_NO_COMPILED_KERNELS 1)
#set(GPUCA_KERNEL_RESOURCE_USAGE_VERBOSE 1)
#set(GPUCA_CONFIG_COMPILER gcc) # gcc / clang
#set(GPUCA_CONFIG_WERROR 1)
#add_definitions(-DGPUCA_GPU_DEBUG_PRINT)
2 changes: 1 addition & 1 deletion GPU/TPCFastTransformation/Spline2D.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include "FlatObject.h"
#include "GPUCommonDef.h"

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#include <Vc/Vc>
#include <Vc/SimdArray>
#endif
Expand Down
2 changes: 1 addition & 1 deletion GPU/TPCFastTransformation/Spline2DSpec.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include "GPUCommonDef.h"
#include "SplineUtil.h"

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#include <Vc/Vc>
#include <Vc/SimdArray>
#endif
Expand Down
2 changes: 1 addition & 1 deletion GPU/TPCFastTransformation/SplineSpec.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include "GPUCommonDef.h"
#include "SplineUtil.h"

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#include <Vc/Vc>
#include <Vc/SimdArray>
#endif
Expand Down
4 changes: 2 additions & 2 deletions GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
#include "FlatObject.h"
#include "GPUCommonDef.h"

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#include <Vc/Vc>
#include <Vc/SimdArray>
#endif
Expand Down Expand Up @@ -329,7 +329,7 @@ GPUdi() void IrregularSpline2D3D::getSplineVec(const float* correctedData, float
// Same as getSpline, but using vectorized calculation.
// \param correctedData should be at least 128-bit aligned

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
const IrregularSpline1D& gridU = getGridU();
const IrregularSpline1D& gridV = getGridV();
int32_t nu = gridU.getNumberOfKnots();
Expand Down
4 changes: 2 additions & 2 deletions GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
#include "RegularSpline1D.h"
#include "FlatObject.h"

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#include <Vc/Vc>
#include <Vc/SimdArray>
#endif
Expand Down Expand Up @@ -398,7 +398,7 @@ inline void SemiregularSpline2D3D::getSplineVec(const float* correctedData, floa
// Same as getSpline, but using vectorized calculation.
// \param correctedData should be at least 128-bit aligned

#if !defined(__ROOTCLING__) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
#if !defined(__CLING__) && !defined(G__ROOT) && !defined(GPUCA_GPUCODE) && !defined(GPUCA_NO_VC)
//&& !defined(__CLING__)
/*
Idea: There are 16 knots important for (u, v).
Expand Down