"tests/models/multimodal/generation/test_common.py" did not exist on "036ca94c25fa07391016aa1b4f93a8ac5d74f296"
common.hpp 808 Bytes
Newer Older
1
2
3
#pragma once

#include "cutlass/cutlass.h"
4
#include <climits>
5
6
7
8
9
10
11
12
13

/**
 * Helper function for checking CUTLASS errors
 */
#define CUTLASS_CHECK(status)                        \
  {                                                  \
    TORCH_CHECK(status == cutlass::Status::kSuccess, \
                cutlassGetStatusString(status))      \
  }
14
15
16
17
18
19

inline uint32_t next_pow_2(uint32_t const num) {
  if (num <= 1) return num;
  return 1 << (CHAR_BIT * sizeof(num) - __builtin_clz(num - 1));
}

20
21
22
23
24
25
26
27
inline int get_cuda_max_shared_memory_per_block_opt_in(int const device) {
  int max_shared_mem_per_block_opt_in = 0;
  cudaDeviceGetAttribute(&max_shared_mem_per_block_opt_in,
                        cudaDevAttrMaxSharedMemoryPerBlockOptin,
                        device);
  return max_shared_mem_per_block_opt_in;
}