11 #include <cublas_v2.h>
12 #include "Float16.cuh"
15 namespace faiss {
namespace gpu {
21 void runMatrixMult(Tensor<float, 2, true>& c,
bool transC,
22 Tensor<float, 2, true>& a,
bool transA,
23 Tensor<float, 2, true>& b,
bool transB,
27 cublasHandle_t handle,
30 #ifdef FAISS_USE_FLOAT16
33 void runMatrixMult(Tensor<half, 2, true>& c,
bool transC,
34 Tensor<half, 2, true>& a,
bool transA,
35 Tensor<half, 2, true>& b,
bool transB,
39 cublasHandle_t handle,
46 void runIteratedMatrixMult(Tensor<float, 3, true>& c,
bool transC,
47 Tensor<float, 3, true>& a,
bool transA,
48 Tensor<float, 3, true>& b,
bool transB,
51 cublasHandle_t handle,
57 void runBatchMatrixMult(Tensor<float, 3, true>& c,
bool transC,
58 Tensor<float, 3, true>& a,
bool transA,
59 Tensor<float, 3, true>& b,
bool transB,
63 cublasHandle_t handle,