Skip to content

Commit a53a04b

Browse files
committed
OpenCL: Enable 64bit integer atomics
1 parent 75e89f1 commit a53a04b

2 files changed

Lines changed: 3 additions & 5 deletions

File tree

GPU/GPUTracking/Base/opencl/GPUReconstructionOCL.cl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
#endif
2323
#pragma OPENCL EXTENSION cl_khr_fp64 : enable // Allow double precision variables
2424
#pragma OPENCL EXTENSION cl_khr_fp16 : enable // Allow half precision
25+
#pragma OPENCL EXTENSION cl_khr_int64_base_atomics : enable // Allow 64bit integer atomics
26+
#pragma OPENCL EXTENSION cl_khr_int64_extended_atomics : enable
2527
#ifdef __clang__
2628
#pragma OPENCL EXTENSION cl_clang_storage_class_specifiers : enable //
2729
#pragma OPENCL EXTENSION __cl_clang_function_pointers : enable // Allow function pointers

GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.cxx

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -579,9 +579,5 @@ GPUd() void GPUTPCCFHIPClusterizer::Thread<0>(int32_t nBlocks, int32_t nThreads,
579579
}
580580
}
581581

582-
#if defined(GPUCA_GPUCODE) && (defined(__CUDACC__) || defined(__HIPCC__))
583-
CAMath::AtomicAdd(reinterpret_cast<unsigned long long*>(&clusterer.mPmemory->counters.nClusters), (unsigned long long)nCreatedClusters);
584-
#else
585-
CAMath::AtomicAdd(&clusterer.mPmemory->counters.nClusters, nCreatedClusters);
586-
#endif
582+
CAMath::AtomicAdd((unsigned long long*)&clusterer.mPmemory->counters.nClusters, (unsigned long long)nCreatedClusters);
587583
}

0 commit comments

Comments
 (0)