summaryrefslogtreecommitdiff
path: root/test/correctness
diff options
context:
space:
mode:
authorCNugteren <web@cedricnugteren.nl>2015-06-25 20:39:34 +0200
committerCNugteren <web@cedricnugteren.nl>2015-06-25 20:39:34 +0200
commitff9f9fac57b550d4a8834a5e5b344c2eefa9099f (patch)
tree3dc1b6a2b7b732480671ea79e6285dabd1ba897e /test/correctness
parent57c705dbf22b8f942337c1217aa2366a05312250 (diff)
Added option to test only symmetric matrices (m=n)
Diffstat (limited to 'test/correctness')
-rw-r--r--test/correctness/routines/xgemm.cc2
-rw-r--r--test/correctness/routines/xsymm.cc2
-rw-r--r--test/correctness/testabc.cc3
-rw-r--r--test/correctness/testabc.h2
4 files changed, 5 insertions, 4 deletions
diff --git a/test/correctness/routines/xgemm.cc b/test/correctness/routines/xgemm.cc
index 4129e17c..b829aaa3 100644
--- a/test/correctness/routines/xgemm.cc
+++ b/test/correctness/routines/xgemm.cc
@@ -76,7 +76,7 @@ void XgemmTest(int argc, char *argv[], const bool silent, const std::string &nam
const auto case_name = ToString(layout)+" "+ToString(a_transpose)+" "+ToString(b_transpose);
// Runs the tests
- tester.TestRegular(args, case_name);
+ tester.TestRegular(args, case_name, false);
tester.TestInvalidBufferSizes(args, case_name);
}
}
diff --git a/test/correctness/routines/xsymm.cc b/test/correctness/routines/xsymm.cc
index d769177f..0e02e9ca 100644
--- a/test/correctness/routines/xsymm.cc
+++ b/test/correctness/routines/xsymm.cc
@@ -76,7 +76,7 @@ void XsymmTest(int argc, char *argv[], const bool silent, const std::string &nam
const auto case_name = ToString(layout)+" "+ToString(side)+" "+ToString(triangle);
// Runs the tests
- tester.TestRegular(args, case_name);
+ tester.TestRegular(args, case_name, true);
tester.TestInvalidBufferSizes(args, case_name);
}
}
diff --git a/test/correctness/testabc.cc b/test/correctness/testabc.cc
index eed17560..64e02523 100644
--- a/test/correctness/testabc.cc
+++ b/test/correctness/testabc.cc
@@ -45,7 +45,7 @@ TestABC<T>::TestABC(int argc, char *argv[], const bool silent,
// Tests the routine for a wide variety of parameters
template <typename T>
-void TestABC<T>::TestRegular(Arguments<T> &args, const std::string &name) {
+void TestABC<T>::TestRegular(Arguments<T> &args, const std::string &name, const bool symmetric) {
if (!PrecisionSupported()) { return; }
TestStart("regular behaviour", name);
@@ -63,6 +63,7 @@ void TestABC<T>::TestRegular(Arguments<T> &args, const std::string &name) {
args.m = m;
for (auto &n: kMatrixDims) {
args.n = n;
+ if (symmetric && m != n) { continue; }
for (auto &k: kMatrixDims) {
args.k = k;
diff --git a/test/correctness/testabc.h b/test/correctness/testabc.h
index 2c44d532..41100db7 100644
--- a/test/correctness/testabc.h
+++ b/test/correctness/testabc.h
@@ -64,7 +64,7 @@ class TestABC: public Tester<T> {
const Routine clblast_lambda, const Routine clblas_lambda);
// The test functions, taking no inputs
- void TestRegular(Arguments<T> &args, const std::string &name);
+ void TestRegular(Arguments<T> &args, const std::string &name, const bool symmetric);
void TestInvalidBufferSizes(Arguments<T> &args, const std::string &name);
private: