stdgpu: stdgpu/platform.h Source File
stdgpu Latest
Efficient STL-like Data Structures on the GPU
|
Go to the documentation of this file.
16#ifndef STDGPU_PLATFORM_H
17#define STDGPU_PLATFORM_H
28#include <stdgpu/config.h>
32#define STDGPU_DETAIL_BACKEND_HEADER(header_file) \
33 <stdgpu/STDGPU_BACKEND_DIRECTORY/header_file>
37#include STDGPU_DETAIL_BACKEND_HEADER(platform.h)
40#include <stdgpu/impl/preprocessor.h>
49#define STDGPU_BACKEND_CUDA 100
54#define STDGPU_BACKEND_OPENMP 101
59#define STDGPU_BACKEND_HIP 102
67#ifdef STDGPU_RUN_DOXYGEN
68 #define STDGPU_BACKEND
77#define STDGPU_HOST_DEVICE STDGPU_DETAIL_CAT3(STDGPU_, STDGPU_BACKEND_MACRO_NAMESPACE, _HOST_DEVICE)
84#define STDGPU_DEVICE_ONLY STDGPU_DETAIL_CAT3(STDGPU_, STDGPU_BACKEND_MACRO_NAMESPACE, _DEVICE_ONLY)
91#define STDGPU_CONSTANT STDGPU_DETAIL_CAT3(STDGPU_, STDGPU_BACKEND_MACRO_NAMESPACE, _CONSTANT)
97#define STDGPU_CODE_HOST 1000
102#define STDGPU_CODE_DEVICE 1001
108#define STDGPU_DETAIL_IS_DEVICE_CODE STDGPU_DETAIL_CAT3(STDGPU_, STDGPU_BACKEND_MACRO_NAMESPACE, _IS_DEVICE_CODE)
118#if STDGPU_DETAIL_IS_DEVICE_CODE
119 #define STDGPU_CODE STDGPU_CODE_DEVICE
121 #define STDGPU_CODE STDGPU_CODE_HOST
128#define STDGPU_DETAIL_IS_DEVICE_COMPILED \
129 STDGPU_DETAIL_CAT3(STDGPU_, STDGPU_BACKEND_MACRO_NAMESPACE, _IS_DEVICE_COMPILED)