Boost logo

Ublas :

Subject: [ublas] [PATCH 3/3] boost::ublas increasing the range of BLAS level 3 benchmarks
From: Imre Palik (imre_palik_at_[hidden])
Date: 2016-02-29 02:46:38


This patch increases the range of BLAS level 3 benchmarks for dense
matrices up to 1000*1000 matrices.

Signed-off-by: Imre Palik <imre_palik_at_[hidden]>

---
 benchmarks/bench1/bench1.cpp  | 14 ++++++++++----
 benchmarks/bench1/bench13.cpp |  8 ++++++++
 benchmarks/bench3/bench3.cpp  | 14 ++++++++++----
 benchmarks/bench3/bench33.cpp |  8 ++++++++
 4 files changed, 36 insertions(+), 8 deletions(-)
diff --git a/benchmarks/bench1/bench1.cpp b/benchmarks/bench1/bench1.cpp
index 87478e1..300eafa 100644
--- a/benchmarks/bench1/bench1.cpp
+++ b/benchmarks/bench1/bench1.cpp
@@ -76,22 +76,28 @@ void do_bench (std::string type_string, int scale)
     header (type_string + ", 3");
     bench_1<scalar, 3> () (1000000 * scale);
     bench_2<scalar, 3> () (300000 * scale);
-    bench_3<scalar, 3> () (100000 * scale);
+    bench_3<scalar, 3> () (3000000 * scale);
 
     header (type_string + ", 10");
     bench_1<scalar, 10> () (300000 * scale);
     bench_2<scalar, 10> () (30000 * scale);
-    bench_3<scalar, 10> () (3000 * scale);
+    bench_3<scalar, 10> () (100000 * scale);
 
     header (type_string + ", 30");
     bench_1<scalar, 30> () (100000 * scale);
     bench_2<scalar, 30> () (3000 * scale);
-    bench_3<scalar, 30> () (100 * scale);
+    bench_3<scalar, 30> () (30000 * scale);
 
     header (type_string + ", 100");
     bench_1<scalar, 100> () (30000 * scale);
     bench_2<scalar, 100> () (300 * scale);
-    bench_3<scalar, 100> () (3 * scale);
+    bench_3<scalar, 100> () (1000 * scale);
+
+    header (type_string + ", 300");
+    bench_3<scalar, 300> () (30 * scale);
+
+    header (type_string + ", 1000");
+    bench_3<scalar, 1000> () (1 * scale);
 }
 
 int main (int argc, char *argv []) {
diff --git a/benchmarks/bench1/bench13.cpp b/benchmarks/bench1/bench13.cpp
index fadb0b6..2378d46 100644
--- a/benchmarks/bench1/bench13.cpp
+++ b/benchmarks/bench1/bench13.cpp
@@ -166,6 +166,8 @@ template struct bench_3<float, 3>;
 template struct bench_3<float, 10>;
 template struct bench_3<float, 30>;
 template struct bench_3<float, 100>;
+template struct bench_3<float, 300>;
+template struct bench_3<float, 1000>;
 #endif
 
 #ifdef USE_DOUBLE
@@ -173,6 +175,8 @@ template struct bench_3<double, 3>;
 template struct bench_3<double, 10>;
 template struct bench_3<double, 30>;
 template struct bench_3<double, 100>;
+template struct bench_3<double, 300>;
+template struct bench_3<double, 1000>;
 #endif
 
 #ifdef USE_STD_COMPLEX
@@ -181,6 +185,8 @@ template struct bench_3<std::complex<float>, 3>;
 template struct bench_3<std::complex<float>, 10>;
 template struct bench_3<std::complex<float>, 30>;
 template struct bench_3<std::complex<float>, 100>;
+template struct bench_3<std::complex<float>, 300>;
+template struct bench_3<std::complex<float>, 1000>;
 #endif
 
 #ifdef USE_DOUBLE
@@ -188,5 +194,7 @@ template struct bench_3<std::complex<double>, 3>;
 template struct bench_3<std::complex<double>, 10>;
 template struct bench_3<std::complex<double>, 30>;
 template struct bench_3<std::complex<double>, 100>;
+template struct bench_3<std::complex<double>, 300>;
+template struct bench_3<std::complex<double>, 1000>;
 #endif
 #endif
diff --git a/benchmarks/bench3/bench3.cpp b/benchmarks/bench3/bench3.cpp
index 390d226..72a3db5 100644
--- a/benchmarks/bench3/bench3.cpp
+++ b/benchmarks/bench3/bench3.cpp
@@ -76,22 +76,28 @@ void do_bench (std::string type_string, int scale)
     header (type_string + ", 3");
     bench_1<scalar, 3> () (1000000 * scale);
     bench_2<scalar, 3> () (300000 * scale);
-    bench_3<scalar, 3> () (100000 * scale);
+    bench_3<scalar, 3> () (3000000 * scale);
 
     header (type_string + ", 10");
     bench_1<scalar, 10> () (300000 * scale);
     bench_2<scalar, 10> () (30000 * scale);
-    bench_3<scalar, 10> () (3000 * scale);
+    bench_3<scalar, 10> () (100000 * scale);
 
     header (type_string + ", 30");
     bench_1<scalar, 30> () (100000 * scale);
     bench_2<scalar, 30> () (3000 * scale);
-    bench_3<scalar, 30> () (100 * scale);
+    bench_3<scalar, 30> () (30000 * scale);
 
     header (type_string + ", 100");
     bench_1<scalar, 100> () (30000 * scale);
     bench_2<scalar, 100> () (300 * scale);
-    bench_3<scalar, 100> () (3 * scale);
+    bench_3<scalar, 100> () (1000 * scale);
+
+    header (type_string + ", 300");
+    bench_3<scalar, 300> () (30 * scale);
+
+    header (type_string + ", 1000");
+    bench_3<scalar, 1000> () (1 * scale);
 }
 
 int main (int argc, char *argv []) {
diff --git a/benchmarks/bench3/bench33.cpp b/benchmarks/bench3/bench33.cpp
index 9b8e107..7eeec07 100644
--- a/benchmarks/bench3/bench33.cpp
+++ b/benchmarks/bench3/bench33.cpp
@@ -172,6 +172,8 @@ template struct bench_3<float, 3>;
 template struct bench_3<float, 10>;
 template struct bench_3<float, 30>;
 template struct bench_3<float, 100>;
+template struct bench_3<float, 300>;
+template struct bench_3<float, 1000>;
 #endif
 
 #ifdef USE_DOUBLE
@@ -179,6 +181,8 @@ template struct bench_3<double, 3>;
 template struct bench_3<double, 10>;
 template struct bench_3<double, 30>;
 template struct bench_3<double, 100>;
+template struct bench_3<double, 300>;
+template struct bench_3<double, 1000>;
 #endif
 
 #ifdef USE_STD_COMPLEX
@@ -187,6 +191,8 @@ template struct bench_3<std::complex<float>, 3>;
 template struct bench_3<std::complex<float>, 10>;
 template struct bench_3<std::complex<float>, 30>;
 template struct bench_3<std::complex<float>, 100>;
+template struct bench_3<std::complex<float>, 300>;
+template struct bench_3<std::complex<float>, 1000>;
 #endif
 
 #ifdef USE_DOUBLE
@@ -194,5 +200,7 @@ template struct bench_3<std::complex<double>, 3>;
 template struct bench_3<std::complex<double>, 10>;
 template struct bench_3<std::complex<double>, 30>;
 template struct bench_3<std::complex<double>, 100>;
+template struct bench_3<std::complex<double>, 300>;
+template struct bench_3<std::complex<double>, 1000>;
 #endif
 #endif
-- 
1.9.1