Project
Loading...
Searching...
No Matches
GPUReconstructionCUDADef.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
14
15#ifndef O2_GPU_GPURECONSTRUCTIONCUDADEF_H
16#define O2_GPU_GPURECONSTRUCTIONCUDADEF_H
17
18#ifndef __HIPCC__ // CUDA
19#define GPUCA_UNROLL(optCu, optHi) GPUCA_M_UNROLL_##optCu
20#define GPUdic(optCu, optHi) GPUCA_GPUdic_select_##optCu()
21#else
22#define GPUCA_UNROLL(optCu, optHi) GPUCA_M_UNROLL_##optHi
23#define GPUdic(optCu, optHi) GPUCA_GPUdic_select_##optHi()
24#endif
25
26#include "GPUDef.h"
27
28#ifndef GPUCA_NO_CONSTANT_MEMORY
29#define GPUCA_CONSMEM_PTR
30#define GPUCA_CONSMEM_CALL
31#define GPUCA_CONSMEM (gGPUConstantMemBuffer.v)
32#else
33#define GPUCA_CONSMEM_PTR const GPUConstantMem *gGPUConstantMemBuffer,
34#define GPUCA_CONSMEM_CALL me->mDeviceConstantMem,
35#define GPUCA_CONSMEM ((GPUConstantMem&)(*gGPUConstantMemBuffer))
36#endif
37#define GPUCA_KRNL_BACKEND_CLASS GPUReconstructionCUDABackend
38
39#endif