29 #ifndef RUN_CUDA_SETTINGS_H_
30 #define RUN_CUDA_SETTINGS_H_
38 #if defined(USE_BFLOAT16_FOR_HALF_PRECISION)
39 #include <cuda_bf16.h>
42 #include <cuda_fp16.h>
60 std::array<int, 2> cuda_version_driver_runtime;
61 cudaGetDeviceProperties(&prop, num_device);
62 cudaDriverGetVersion(&(cuda_version_driver_runtime[0]));
63 cudaRuntimeGetVersion(&(cuda_version_driver_runtime[1]));
67 "Device " + std::to_string(num_device),
68 std::string(prop.name) +
" with " +
69 std::to_string(prop.multiProcessorCount) +
73 std::to_string(cuda_version_driver_runtime[0]));
76 std::to_string(cuda_version_driver_runtime[1]));
84 #if defined(DEFAULT_PARALLEL_PARAMS_ONLY)
90 #elif defined(LIMITED_ALT_PARALLEL_PARAMS)
97 {16, 1}, {32, 4}, {64, 4}};
106 {16, 1}, {32, 1}, {32, 2}, {32, 3}, {32, 4}, {32, 5},
107 {32, 6}, {32, 8}, {64, 1}, {64, 2}, {64, 3}, {64, 4},
108 {128, 1}, {128, 2}, {256, 1}, {32, 10}, {32, 12}, {32, 14}, {32, 16},
109 {64, 5}, {64, 6}, {64, 7}, {64, 8}, {128, 3}, {128, 4}, {256, 2}};
Declares class to store headers with data corresponding to current program run and evaluation.
Class to store headers with data corresponding to current program run and evaluation.
void AddDataWHeader(const std::string &header, const std::string &data)
Add string data with header describing added data.
Namespace with constants and functions to get CUDA device properties as well as default and test para...
constexpr std::string_view kCUDAVersionHeader
constexpr std::array< unsigned int, 2 > kParallelParamsDefault
Default thread block dimensions (which is what parallel parameters corresponds to in CUDA implementat...
const std::set< std::array< unsigned int, 2 > > kParallelParameterAltOptions
Parallel parameter alternative options to run to retrieve optimized parallel parameters in CUDA imple...
RunData retrieveDeviceProperties(int num_device)
constexpr std::string_view kOptimizeCUDADesc
constexpr std::string_view kCUDARuntimeHeader