How_to_optimize_in_GPU
How_to_optimize_in_GPU copied to clipboard
sgemm 与cublas求的结果不同
当K=64,128等的时候,结果不同。
例如:
size_t M = 8000;
size_t K = 64;
size_t N = 8000;
您好, size_t M = 256; size_t K =64; size_t N = 512; 的结果也是不同的
您好, size_t M = 256; size_t K =64; size_t N = 512; 的结果也是不同的
请问是哪个版本的sgemm呢?
您好, size_t M = 256; size_t K =64; size_t N = 512; 的结果也是不同的
请问是哪个版本的sgemm呢?
您好,是master分支下面的sgemm/sgemm_v3.cu和sgemm_v1.cu。
您好, size_t M = 256; size_t K =64; size_t N = 512; 的结果也是不同的
请问是哪个版本的sgemm呢?
您好,是master分支下面的sgemm/sgemm_v3.cu和sgemm_v1.cu。
非常感谢,我后续验证一下
您好, size_t M = 256; size_t K =64; size_t N = 512; 的结果也是不同的
请问是哪个版本的sgemm呢?
您好,是master分支下面的sgemm/sgemm_v3.cu和sgemm_v1.cu。
非常感谢,我后续验证一下
问题出在这,最后一个参数应该是M而不是N。 cublasSgemm (blas_handle, CUBLAS_OP_T, CUBLAS_OP_T, M, N, K, &alpha, d_A, K, d_B, N, &beta, d_C, N );
当K=64,128等的时候,结果不同。 例如: size_t M = 8000; size_t K = 64; size_t N = 8000;
因为M=N=8000除以bm=bn=128不整除,改成bm=bn=64试试,是对的。
