1 | #pragma once |
2 | |
3 | #ifndef C10_USING_CUSTOM_GENERATED_MACROS |
4 | |
5 | // We have not yet modified the AMD HIP build to generate this file so |
6 | // we add an extra option to specifically ignore it. |
7 | #ifndef C10_CUDA_NO_CMAKE_CONFIGURE_FILE |
8 | #include <c10/cuda/impl/cuda_cmake_macros.h> |
9 | #endif // C10_CUDA_NO_CMAKE_CONFIGURE_FILE |
10 | |
11 | #endif |
12 | |
13 | // See c10/macros/Export.h for a detailed explanation of what the function |
14 | // of these macros are. We need one set of macros for every separate library |
15 | // we build. |
16 | |
17 | #ifdef _WIN32 |
18 | #if defined(C10_CUDA_BUILD_SHARED_LIBS) |
19 | #define C10_CUDA_EXPORT __declspec(dllexport) |
20 | #define C10_CUDA_IMPORT __declspec(dllimport) |
21 | #else |
22 | #define C10_CUDA_EXPORT |
23 | #define C10_CUDA_IMPORT |
24 | #endif |
25 | #else // _WIN32 |
26 | #if defined(__GNUC__) |
27 | #define C10_CUDA_EXPORT __attribute__((__visibility__("default"))) |
28 | #else // defined(__GNUC__) |
29 | #define C10_CUDA_EXPORT |
30 | #endif // defined(__GNUC__) |
31 | #define C10_CUDA_IMPORT C10_CUDA_EXPORT |
32 | #endif // _WIN32 |
33 | |
34 | // This one is being used by libc10_cuda.so |
35 | #ifdef C10_CUDA_BUILD_MAIN_LIB |
36 | #define C10_CUDA_API C10_CUDA_EXPORT |
37 | #else |
38 | #define C10_CUDA_API C10_CUDA_IMPORT |
39 | #endif |
40 | |
41 | /** |
42 | * The maximum number of GPUs that we recognizes. |
43 | */ |
44 | #define C10_COMPILE_TIME_MAX_GPUS 16 |
45 | |