summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorCedric Nugteren <web@cedricnugteren.nl>2017-02-26 12:56:21 +0100
committerCedric Nugteren <web@cedricnugteren.nl>2017-02-26 12:56:21 +0100
commitb7310036eda482e8871d6a9d1e1660f93be1fd49 (patch)
tree989233807563dfe96a3d241697770fe7d978ade0 /test
parent70d8c4bad7911b3688ac4514fedc44e5e0f1f2d8 (diff)
Removed half-precision support from the TRSM routine; too unstable
Diffstat (limited to 'test')
-rw-r--r--test/correctness/routines/level3/xtrsm.cpp1
-rw-r--r--test/performance/routines/level3/xtrsm.cpp3
-rw-r--r--test/wrapper_cblas.hpp14
-rw-r--r--test/wrapper_clblas.hpp18
4 files changed, 1 insertions, 35 deletions
diff --git a/test/correctness/routines/level3/xtrsm.cpp b/test/correctness/routines/level3/xtrsm.cpp
index 6119bd17..bc45a8bf 100644
--- a/test/correctness/routines/level3/xtrsm.cpp
+++ b/test/correctness/routines/level3/xtrsm.cpp
@@ -23,7 +23,6 @@ int main(int argc, char *argv[]) {
errors += clblast::RunTests<clblast::TestXtrsm<double>, double, double>(argc, argv, true, "DTRSM");
errors += clblast::RunTests<clblast::TestXtrsm<float2>, float2, float2>(argc, argv, true, "CTRSM");
errors += clblast::RunTests<clblast::TestXtrsm<double2>, double2, double2>(argc, argv, true, "ZTRSM");
- errors += clblast::RunTests<clblast::TestXtrsm<half>, half, half>(argc, argv, true, "HTRSM");
if (errors > 0) { return 1; } else { return 0; }
}
diff --git a/test/performance/routines/level3/xtrsm.cpp b/test/performance/routines/level3/xtrsm.cpp
index ef094891..342274b7 100644
--- a/test/performance/routines/level3/xtrsm.cpp
+++ b/test/performance/routines/level3/xtrsm.cpp
@@ -20,8 +20,7 @@ using double2 = clblast::double2;
int main(int argc, char *argv[]) {
const auto command_line_args = clblast::RetrieveCommandLineArguments(argc, argv);
switch(clblast::GetPrecision(command_line_args, clblast::Precision::kSingle)) {
- case clblast::Precision::kHalf:
- clblast::RunClient<clblast::TestXtrsm<half>, half, half>(argc, argv); break;
+ case clblast::Precision::kHalf: throw std::runtime_error("Unsupported precision mode");
case clblast::Precision::kSingle:
clblast::RunClient<clblast::TestXtrsm<float>, float, float>(argc, argv); break;
case clblast::Precision::kDouble:
diff --git a/test/wrapper_cblas.hpp b/test/wrapper_cblas.hpp
index 5f1db54e..dd610a6c 100644
--- a/test/wrapper_cblas.hpp
+++ b/test/wrapper_cblas.hpp
@@ -2103,20 +2103,6 @@ void cblasXtrsm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPL
reinterpret_cast<const double*>(&a_buffer[a_offset]), a_ld,
reinterpret_cast<double*>(&b_buffer[b_offset]), b_ld);
}
-void cblasXtrsm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal,
- const size_t m, const size_t n,
- const half alpha,
- const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld,
- std::vector<half>& b_buffer, const size_t b_offset, const size_t b_ld) {
- auto a_buffer_bis = HalfToFloatBuffer(a_buffer);
- auto b_buffer_bis = HalfToFloatBuffer(b_buffer);
- cblasXtrsm(layout, side, triangle, a_transpose, diagonal,
- m, n,
- HalfToFloat(alpha),
- a_buffer_bis, a_offset, a_ld,
- b_buffer_bis, b_offset, b_ld);
- FloatToHalfBuffer(b_buffer, b_buffer_bis);
-}
// =================================================================================================
} // namespace clblast
diff --git a/test/wrapper_clblas.hpp b/test/wrapper_clblas.hpp
index f1923784..f1b3a0c4 100644
--- a/test/wrapper_clblas.hpp
+++ b/test/wrapper_clblas.hpp
@@ -2865,24 +2865,6 @@ clblasStatus clblasXtrsm(const clblasOrder layout, const clblasSide side, const
b_buffer(), b_offset, b_ld,
num_queues, queues, num_wait_events, wait_events, events);
}
-clblasStatus clblasXtrsm(const clblasOrder layout, const clblasSide side, const clblasUplo triangle, const clblasTranspose a_transpose, const clblasDiag diagonal,
- const size_t m, const size_t n,
- const half alpha,
- const Buffer<half>& a_buffer, const size_t a_offset, const size_t a_ld,
- Buffer<half>& b_buffer, const size_t b_offset, const size_t b_ld,
- cl_uint num_queues, cl_command_queue *queues,
- cl_uint num_wait_events, const cl_event *wait_events, cl_event *events) {
- auto a_buffer_bis = HalfToFloatBuffer(a_buffer, queues[0]);
- auto b_buffer_bis = HalfToFloatBuffer(b_buffer, queues[0]);
- auto status = clblasXtrsm(layout, side, triangle, a_transpose, diagonal,
- m, n,
- HalfToFloat(alpha),
- a_buffer_bis, a_offset, a_ld,
- b_buffer_bis, b_offset, b_ld,
- num_queues, queues, num_wait_events, wait_events, events);
- FloatToHalfBuffer(b_buffer, b_buffer_bis, queues[0]);
- return status;
-}
// =================================================================================================
} // namespace clblast