| 77 | |
| 78 | template<class AType, class BType, class CType, class AccumType> |
| 79 | void reference_gpu_gemm(GemmParams<AType, BType, CType, AccumType> params) { |
| 80 | /// don't know what tilings are good, but not important here |
| 81 | const int mTile = 4; |
| 82 | const int nTile = 4; |
| 83 | const int kTile = 4; |
| 84 | const int tx = 128; |
| 85 | const int ty = 1; |
| 86 | dim3 grid(ceil_div(params.N, nTile * tx), ceil_div(params.M, mTile * ty)); |
| 87 | dim3 block(tx, ty); |
| 88 | reference_gpu_gemm_kernel<AType, BType, CType, AccumType, mTile, nTile, kTile><<<grid, block>>>(params); |
| 89 | CUDA_CHECK(cudaGetLastError()); |
| 90 | } |
nothing calls this directly
no test coverage detected