13 #include <cublas_v2.h>
14 #include "Float16.cuh"
17 namespace faiss {
namespace gpu {
23 void runMatrixMult(Tensor<float, 2, true>& c,
bool transC,
24 Tensor<float, 2, true>& a,
bool transA,
25 Tensor<float, 2, true>& b,
bool transB,
29 cublasHandle_t handle,
32 #ifdef FAISS_USE_FLOAT16
35 void runMatrixMult(Tensor<half, 2, true>& c,
bool transC,
36 Tensor<half, 2, true>& a,
bool transA,
37 Tensor<half, 2, true>& b,
bool transB,
41 cublasHandle_t handle,
48 void runIteratedMatrixMult(Tensor<float, 3, true>& c,
bool transC,
49 Tensor<float, 3, true>& a,
bool transA,
50 Tensor<float, 3, true>& b,
bool transB,
53 cublasHandle_t handle,
59 void runBatchMatrixMult(Tensor<float, 3, true>& c,
bool transC,
60 Tensor<float, 3, true>& a,
bool transA,
61 Tensor<float, 3, true>& b,
bool transB,
65 cublasHandle_t handle,