Benchmark: rectified sizes for benchmarks to fit convnet-benchmarks

This commit is contained in:
Philippe Tillet
2015-11-28 21:49:55 -05:00
parent e9b50b347c
commit 7140f065c2
3 changed files with 26 additions and 33 deletions

View File

@@ -262,34 +262,25 @@ void bench(sc::numeric_type dtype, std::string operation)
MNKs.push_back(std::make_tuple("Square2560",'N','T',2560,2560,2560)); MNKs.push_back(std::make_tuple("Square2560",'N','T',2560,2560,2560));
//Convolution //Convolution
// MNKs.push_back(std::make_tuple("ConvAlexNet1",'N','N',3025,96,363));
// MNKs.push_back(std::make_tuple("ConvAlexNet2",'N','N',729,128,1200));
// MNKs.push_back(std::make_tuple("ConvAlexNet3",'N','N',169,384,2304));
// MNKs.push_back(std::make_tuple("ConvAlexNet4",'N','N',169,192,1728));
// MNKs.push_back(std::make_tuple("ConvAlexNet5",'N','N',169,128,1728));
MNKs.push_back(std::make_tuple("ConvAlexNet1",'N','N',3025,64,363)); MNKs.push_back(std::make_tuple("ConvAlexNet1",'N','N',3025,64,363));
MNKs.push_back(std::make_tuple("ConvAlexNet2",'N','N',729,192,1600)); MNKs.push_back(std::make_tuple("ConvAlexNet2",'N','N',729,192,1600));
MNKs.push_back(std::make_tuple("ConvAlexNet3",'N','N',169,384,1728)); MNKs.push_back(std::make_tuple("ConvAlexNet3",'N','N',169,384,1728));
MNKs.push_back(std::make_tuple("ConvAlexNet4",'N','N',169,256,3456)); MNKs.push_back(std::make_tuple("ConvAlexNet4",'N','N',169,256,3456));
MNKs.push_back(std::make_tuple("ConvAlexNet5",'N','N',169,128,2304)); MNKs.push_back(std::make_tuple("ConvAlexNet5",'N','N',169,128,2304));
// MNKs.push_back(std::make_tuple("ConvLeNet1,'N','N',576,20,25));
// MNKs.push_back(std::make_tuple("ConvLeNet2",'N','N',64,50,500));
//Convolution Gradient-1 //Convolution Gradient-1
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [AlexNet-5]",'T','N',1728,128,169)); MNKs.push_back(std::make_tuple("BackConvAlexNet5-1]",'T','N',2304,256,169));
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [AlexNet-4]",'T','N',1728,192,169)); MNKs.push_back(std::make_tuple("BackConvAlexNet4-1]",'T','N',3456,256,169));
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [AlexNet-3]",'T','N',2304,384,169)); MNKs.push_back(std::make_tuple("BackConvAlexNet3-1]",'T','N',1728,384,169));
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [AlexNet-2]",'T','N',1200,128,729)); MNKs.push_back(std::make_tuple("BackConvAlexNet2-1]",'T','N',1600,192,729));
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [AlexNet-1]",'T','N',363,96,3025)); MNKs.push_back(std::make_tuple("BackConvAlexNet1-1]",'T','N',363,64,3025));
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [LeNet-2]",'T','N',500,50,64));
// MNKs.push_back(std::make_tuple("Convolution Gradient-1 [LeNet-1]",'T','N',25,20,576));
//Convolution Gradient-2 //Convolution Gradient-2
// MNKs.push_back(std::make_tuple("Convolution Gradient-2 [AlexNet-5]",'N','T',169,1728,128)); MNKs.push_back(std::make_tuple("BackConvAlexNet5-2]",'N','T',169,2304,256));
// MNKs.push_back(std::make_tuple("Convolution Gradient-2 [AlexNet-4]",'N','T',169,1728,192)); MNKs.push_back(std::make_tuple("BackConvAlexNet4-2]",'N','T',169,3456,256));
// MNKs.push_back(std::make_tuple("Convolution Gradient-2 [AlexNet-3]",'N','T',169,2304,384)); MNKs.push_back(std::make_tuple("BackConvAlexNet3-2]",'N','T',169,1728,384));
// MNKs.push_back(std::make_tuple("Convolution Gradient-2 [AlexNet-2]",'N','T',729,1200,128)); MNKs.push_back(std::make_tuple("BackConvAlexNet2-2]",'N','T',729,1600,192));
// MNKs.push_back(std::make_tuple("Convolution Gradient-2 [LeNet-2]",'N','T',64,500,50)); MNKs.push_back(std::make_tuple("BackConvAlexNet1-2]",'N','T',3025,363,64));
//Covariance (e.g., ICA, 10minutes/100Hz) //Covariance (e.g., ICA, 10minutes/100Hz)
MNKs.push_back(std::make_tuple("ICA32",'N','T',32,32,60000)); MNKs.push_back(std::make_tuple("ICA32",'N','T',32,32,60000));

View File

@@ -200,6 +200,7 @@ extern "C"
const TYPE_CU *B, int ldb, TYPE_CU beta, TYPE_CU *C,\ const TYPE_CU *B, int ldb, TYPE_CU beta, TYPE_CU *C,\
int ldc)\ int ldc)\
{\ {\
std::cout << transa << " " << transb << " " << m << " " << n << " " << k << std::endl;\
if(k==1 && m>1 && n>1){\ if(k==1 && m>1 && n>1){\
sc::array dA((sc::int_t)m, TYPE_ISAAC, sc::driver::Buffer((CUdeviceptr)A, false), 0, transa=='N'?1:lda);\ sc::array dA((sc::int_t)m, TYPE_ISAAC, sc::driver::Buffer((CUdeviceptr)A, false), 0, transa=='N'?1:lda);\
sc::array dB((sc::int_t)n, TYPE_ISAAC, sc::driver::Buffer((CUdeviceptr)B, false), 0, transb=='T'?1:ldb);\ sc::array dB((sc::int_t)n, TYPE_ISAAC, sc::driver::Buffer((CUdeviceptr)B, false), 0, transb=='T'?1:ldb);\

View File

@@ -83,20 +83,21 @@ class Tuner:
(1536,1536,1536), (1536,1536,1536),
(32,32,16000), (32,32,16000),
(64, 64,64000), (64, 64,64000),
(3025,96,363), (3025,64,363),
(729,128,1200), (729,192,1200),
(169,384,2304), (169,384,1728),
(169,192,1728), (169,256,3456),
(169,128,1728), (169,128,2304),
(169,1728,128), (169,2304,256),
(169,1728,192), (169,3456,256),
(169,2304,384), (169,1728,384),
(729,1200,128), (729,1600,192),
(1728,128,169), (3025,363,64),
(1728,192,169), (2304,256,169),
(2304,384,169), (3456,256,169),
(1200,128,729), (1728,384,169),
(363,96,3025)] (1600,192,729),
(363,64,3025)]
elif level=='full': elif level=='full':
sizes = product(pow2range(5, 12), pow2range(5, 12), pow2range(5, 17)) sizes = product(pow2range(5, 12), pow2range(5, 12), pow2range(5, 17))