12 #include <cublas_v2.h>
13 #include "Float16.cuh"
16 namespace faiss {
namespace gpu {
22 void runMatrixMult(Tensor<float, 2, true>& c,
bool transC,
23 Tensor<float, 2, true>& a,
bool transA,
24 Tensor<float, 2, true>& b,
bool transB,
28 cublasHandle_t handle,
31 #ifdef FAISS_USE_FLOAT16
34 void runMatrixMult(Tensor<half, 2, true>& c,
bool transC,
35 Tensor<half, 2, true>& a,
bool transA,
36 Tensor<half, 2, true>& b,
bool transB,
40 cublasHandle_t handle,
47 void runIteratedMatrixMult(Tensor<float, 3, true>& c,
bool transC,
48 Tensor<float, 3, true>& a,
bool transA,
49 Tensor<float, 3, true>& b,
bool transB,
52 cublasHandle_t handle,
58 void runBatchMatrixMult(Tensor<float, 3, true>& c,
bool transC,
59 Tensor<float, 3, true>& a,
bool transA,
60 Tensor<float, 3, true>& b,
bool transB,
64 cublasHandle_t handle,