summaryrefslogtreecommitdiff
path: root/src/clblast.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/clblast.cc')
-rw-r--r--src/clblast.cc114
1 files changed, 38 insertions, 76 deletions
diff --git a/src/clblast.cc b/src/clblast.cc
index 75893ee9..4f4b6078 100644
--- a/src/clblast.cc
+++ b/src/clblast.cc
@@ -161,8 +161,7 @@ StatusCode Swap(const size_t n,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xswap<T>(queue_cpp, event_cpp);
+ auto routine = Xswap<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSwap(n,
@@ -193,8 +192,7 @@ StatusCode Scal(const size_t n,
cl_mem x_buffer, const size_t x_offset, const size_t x_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xscal<T>(queue_cpp, event_cpp);
+ auto routine = Xscal<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoScal(n,
@@ -225,8 +223,7 @@ StatusCode Copy(const size_t n,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xcopy<T>(queue_cpp, event_cpp);
+ auto routine = Xcopy<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoCopy(n,
@@ -258,8 +255,7 @@ StatusCode Axpy(const size_t n,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xaxpy<T>(queue_cpp, event_cpp);
+ auto routine = Xaxpy<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoAxpy(n,
@@ -296,8 +292,7 @@ StatusCode Dot(const size_t n,
const cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xdot<T>(queue_cpp, event_cpp);
+ auto routine = Xdot<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoDot(n,
@@ -324,8 +319,7 @@ StatusCode Dotu(const size_t n,
const cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xdotu<T>(queue_cpp, event_cpp);
+ auto routine = Xdotu<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoDotu(n,
@@ -352,8 +346,7 @@ StatusCode Dotc(const size_t n,
const cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xdotc<T>(queue_cpp, event_cpp);
+ auto routine = Xdotc<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoDotc(n,
@@ -379,8 +372,7 @@ StatusCode Nrm2(const size_t n,
const cl_mem x_buffer, const size_t x_offset, const size_t x_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xnrm2<T>(queue_cpp, event_cpp);
+ auto routine = Xnrm2<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoNrm2(n,
@@ -419,8 +411,7 @@ StatusCode Gemv(const Layout layout, const Transpose a_transpose,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xgemv<T>(queue_cpp, event_cpp);
+ auto routine = Xgemv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoGemv(layout, a_transpose,
@@ -475,8 +466,7 @@ StatusCode Gbmv(const Layout layout, const Transpose a_transpose,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xgbmv<T>(queue_cpp, event_cpp);
+ auto routine = Xgbmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoGbmv(layout, a_transpose,
@@ -531,8 +521,7 @@ StatusCode Hemv(const Layout layout, const Triangle triangle,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xhemv<T>(queue_cpp, event_cpp);
+ auto routine = Xhemv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHemv(layout, triangle,
@@ -571,8 +560,7 @@ StatusCode Hbmv(const Layout layout, const Triangle triangle,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xhbmv<T>(queue_cpp, event_cpp);
+ auto routine = Xhbmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHbmv(layout, triangle,
@@ -611,8 +599,7 @@ StatusCode Hpmv(const Layout layout, const Triangle triangle,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xhpmv<T>(queue_cpp, event_cpp);
+ auto routine = Xhpmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHpmv(layout, triangle,
@@ -651,8 +638,7 @@ StatusCode Symv(const Layout layout, const Triangle triangle,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsymv<T>(queue_cpp, event_cpp);
+ auto routine = Xsymv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSymv(layout, triangle,
@@ -691,8 +677,7 @@ StatusCode Sbmv(const Layout layout, const Triangle triangle,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsbmv<T>(queue_cpp, event_cpp);
+ auto routine = Xsbmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSbmv(layout, triangle,
@@ -731,8 +716,7 @@ StatusCode Spmv(const Layout layout, const Triangle triangle,
cl_mem y_buffer, const size_t y_offset, const size_t y_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xspmv<T>(queue_cpp, event_cpp);
+ auto routine = Xspmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSpmv(layout, triangle,
@@ -768,8 +752,7 @@ StatusCode Trmv(const Layout layout, const Triangle triangle, const Transpose a_
cl_mem x_buffer, const size_t x_offset, const size_t x_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xtrmv<T>(queue_cpp, event_cpp);
+ auto routine = Xtrmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoTrmv(layout, triangle, a_transpose, diagonal,
@@ -806,8 +789,7 @@ StatusCode Tbmv(const Layout layout, const Triangle triangle, const Transpose a_
cl_mem x_buffer, const size_t x_offset, const size_t x_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xtbmv<T>(queue_cpp, event_cpp);
+ auto routine = Xtbmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoTbmv(layout, triangle, a_transpose, diagonal,
@@ -844,8 +826,7 @@ StatusCode Tpmv(const Layout layout, const Triangle triangle, const Transpose a_
cl_mem x_buffer, const size_t x_offset, const size_t x_inc,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xtpmv<T>(queue_cpp, event_cpp);
+ auto routine = Xtpmv<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoTpmv(layout, triangle, a_transpose, diagonal,
@@ -974,8 +955,7 @@ StatusCode Ger(const Layout layout,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xger<T>(queue_cpp, event_cpp);
+ auto routine = Xger<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoGer(layout,
@@ -1010,8 +990,7 @@ StatusCode Geru(const Layout layout,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xgeru<T>(queue_cpp, event_cpp);
+ auto routine = Xgeru<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoGeru(layout,
@@ -1046,8 +1025,7 @@ StatusCode Gerc(const Layout layout,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xgerc<T>(queue_cpp, event_cpp);
+ auto routine = Xgerc<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoGerc(layout,
@@ -1081,8 +1059,7 @@ StatusCode Her(const Layout layout, const Triangle triangle,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xher<std::complex<T>,T>(queue_cpp, event_cpp);
+ auto routine = Xher<std::complex<T>,T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHer(layout, triangle,
@@ -1113,8 +1090,7 @@ StatusCode Hpr(const Layout layout, const Triangle triangle,
cl_mem ap_buffer, const size_t ap_offset,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xhpr<std::complex<T>,T>(queue_cpp, event_cpp);
+ auto routine = Xhpr<std::complex<T>,T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHpr(layout, triangle,
@@ -1146,8 +1122,7 @@ StatusCode Her2(const Layout layout, const Triangle triangle,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xher2<T>(queue_cpp, event_cpp);
+ auto routine = Xher2<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHer2(layout, triangle,
@@ -1182,8 +1157,7 @@ StatusCode Hpr2(const Layout layout, const Triangle triangle,
cl_mem ap_buffer, const size_t ap_offset,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xhpr2<T>(queue_cpp, event_cpp);
+ auto routine = Xhpr2<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHpr2(layout, triangle,
@@ -1217,8 +1191,7 @@ StatusCode Syr(const Layout layout, const Triangle triangle,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsyr<T>(queue_cpp, event_cpp);
+ auto routine = Xsyr<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSyr(layout, triangle,
@@ -1249,8 +1222,7 @@ StatusCode Spr(const Layout layout, const Triangle triangle,
cl_mem ap_buffer, const size_t ap_offset,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xspr<T>(queue_cpp, event_cpp);
+ auto routine = Xspr<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSpr(layout, triangle,
@@ -1282,8 +1254,7 @@ StatusCode Syr2(const Layout layout, const Triangle triangle,
cl_mem a_buffer, const size_t a_offset, const size_t a_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsyr2<T>(queue_cpp, event_cpp);
+ auto routine = Xsyr2<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSyr2(layout, triangle,
@@ -1318,8 +1289,7 @@ StatusCode Spr2(const Layout layout, const Triangle triangle,
cl_mem ap_buffer, const size_t ap_offset,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xspr2<T>(queue_cpp, event_cpp);
+ auto routine = Xspr2<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSpr2(layout, triangle,
@@ -1359,8 +1329,7 @@ StatusCode Gemm(const Layout layout, const Transpose a_transpose, const Transpos
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xgemm<T>(queue_cpp, event_cpp);
+ auto routine = Xgemm<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoGemm(layout, a_transpose, b_transpose,
@@ -1415,8 +1384,7 @@ StatusCode Symm(const Layout layout, const Side side, const Triangle triangle,
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsymm<T>(queue_cpp, event_cpp);
+ auto routine = Xsymm<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSymm(layout, side, triangle,
@@ -1471,8 +1439,7 @@ StatusCode Hemm(const Layout layout, const Side side, const Triangle triangle,
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xhemm<T>(queue_cpp, event_cpp);
+ auto routine = Xhemm<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHemm(layout, side, triangle,
@@ -1510,8 +1477,7 @@ StatusCode Syrk(const Layout layout, const Triangle triangle, const Transpose a_
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsyrk<T>(queue_cpp, event_cpp);
+ auto routine = Xsyrk<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSyrk(layout, triangle, a_transpose,
@@ -1560,8 +1526,7 @@ StatusCode Herk(const Layout layout, const Triangle triangle, const Transpose a_
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xherk<std::complex<T>,T>(queue_cpp, event_cpp);
+ auto routine = Xherk<std::complex<T>,T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHerk(layout, triangle, a_transpose,
@@ -1597,8 +1562,7 @@ StatusCode Syr2k(const Layout layout, const Triangle triangle, const Transpose a
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xsyr2k<T>(queue_cpp, event_cpp);
+ auto routine = Xsyr2k<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoSyr2k(layout, triangle, ab_transpose,
@@ -1653,8 +1617,7 @@ StatusCode Her2k(const Layout layout, const Triangle triangle, const Transpose a
cl_mem c_buffer, const size_t c_offset, const size_t c_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xher2k<T,U>(queue_cpp, event_cpp);
+ auto routine = Xher2k<T,U>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoHer2k(layout, triangle, ab_transpose,
@@ -1691,8 +1654,7 @@ StatusCode Trmm(const Layout layout, const Side side, const Triangle triangle, c
cl_mem b_buffer, const size_t b_offset, const size_t b_ld,
cl_command_queue* queue, cl_event* event) {
auto queue_cpp = Queue(*queue);
- auto event_cpp = Event(event);
- auto routine = Xtrmm<T>(queue_cpp, event_cpp);
+ auto routine = Xtrmm<T>(queue_cpp, event);
auto status = routine.SetUp();
if (status != StatusCode::kSuccess) { return status; }
return routine.DoTrmm(layout, side, triangle, a_transpose, diagonal,