diff options
Diffstat (limited to 'test/wrapper_cblas.h')
-rw-r--r-- | test/wrapper_cblas.h | 192 |
1 files changed, 192 insertions, 0 deletions
diff --git a/test/wrapper_cblas.h b/test/wrapper_cblas.h index 3182fdfc..2fcab4d0 100644 --- a/test/wrapper_cblas.h +++ b/test/wrapper_cblas.h @@ -161,6 +161,11 @@ void cblasXswap(const size_t n, reinterpret_cast<double*>(&x_buffer[x_offset]), static_cast<int>(x_inc), reinterpret_cast<double*>(&y_buffer[y_offset]), static_cast<int>(y_inc)); } +void cblasXswap(const size_t n, + std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for SSCAL/DSCAL/CSCAL/ZSCAL void cblasXscal(const size_t n, @@ -193,6 +198,11 @@ void cblasXscal(const size_t n, alpha_array.data(), reinterpret_cast<double*>(&x_buffer[x_offset]), static_cast<int>(x_inc)); } +void cblasXscal(const size_t n, + const half alpha, + std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // Forwards the Netlib BLAS calls for SCOPY/DCOPY/CCOPY/ZCOPY void cblasXcopy(const size_t n, @@ -223,6 +233,11 @@ void cblasXcopy(const size_t n, reinterpret_cast<const double*>(&x_buffer[x_offset]), static_cast<int>(x_inc), reinterpret_cast<double*>(&y_buffer[y_offset]), static_cast<int>(y_inc)); } +void cblasXcopy(const size_t n, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for SAXPY/DAXPY/CAXPY/ZAXPY void cblasXaxpy(const size_t n, @@ -263,6 +278,12 @@ void cblasXaxpy(const size_t n, reinterpret_cast<const double*>(&x_buffer[x_offset]), static_cast<int>(x_inc), reinterpret_cast<double*>(&y_buffer[y_offset]), static_cast<int>(y_inc)); } +void cblasXaxpy(const size_t n, + const half alpha, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for SDOT/DDOT void cblasXdot(const size_t n, @@ -281,6 +302,12 @@ void cblasXdot(const size_t n, &x_buffer[x_offset], static_cast<int>(x_inc), &y_buffer[y_offset], static_cast<int>(y_inc)); } +void cblasXdot(const size_t n, + std::vector<half>& dot_buffer, const size_t dot_offset, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for CDOTU/ZDOTU void cblasXdotu(const size_t n, @@ -347,6 +374,11 @@ void cblasXnrm2(const size_t n, nrm2_buffer[nrm2_offset].real(cblas_dznrm2(n, reinterpret_cast<const double*>(&x_buffer[x_offset]), static_cast<int>(x_inc))); } +void cblasXnrm2(const size_t n, + std::vector<half>& nrm2_buffer, const size_t nrm2_offset, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // Forwards the Netlib BLAS calls for SASUM/DASUM/ScASUM/DzASUM void cblasXasum(const size_t n, @@ -373,6 +405,11 @@ void cblasXasum(const size_t n, asum_buffer[asum_offset].real(cblas_dzasum(n, reinterpret_cast<const double*>(&x_buffer[x_offset]), static_cast<int>(x_inc))); } +void cblasXasum(const size_t n, + std::vector<half>& asum_buffer, const size_t asum_offset, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // Forwards the Netlib BLAS calls for iSAMAX/iDAMAX/iCAMAX/iZAMAX/iHAMAX void cblasXamax(const size_t n, @@ -399,6 +436,11 @@ void cblasXamax(const size_t n, ((int*)&imax_buffer[0])[imax_offset] = cblas_izamax(n, reinterpret_cast<const double*>(&x_buffer[x_offset]), static_cast<int>(x_inc)); } +void cblasXamax(const size_t n, + std::vector<half>& imax_buffer, const size_t imax_offset, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // ================================================================================================= // BLAS level-2 (matrix-vector) routines @@ -469,6 +511,15 @@ void cblasXgemv(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, beta_array.data(), reinterpret_cast<double*>(&y_buffer[y_offset]), static_cast<int>(y_inc)); } +void cblasXgemv(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, + 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, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const half beta, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for SGBMV/DGBMV/CGBMV/ZGBMV void cblasXgbmv(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, @@ -535,6 +586,15 @@ void cblasXgbmv(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, beta_array.data(), reinterpret_cast<double*>(&y_buffer[y_offset]), static_cast<int>(y_inc)); } +void cblasXgbmv(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, + const size_t m, const size_t n, const size_t kl, const size_t ku, + const half alpha, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const half beta, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for CHEMV/ZHEMV void cblasXhemv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, @@ -675,6 +735,15 @@ void cblasXsymv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, beta, &y_buffer[y_offset], static_cast<int>(y_inc)); } +void cblasXsymv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, + const half alpha, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const half beta, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for SSBMV/DSBMV void cblasXsbmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, @@ -707,6 +776,15 @@ void cblasXsbmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, beta, &y_buffer[y_offset], static_cast<int>(y_inc)); } +void cblasXsbmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, const size_t k, + const half alpha, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const half beta, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for SSPMV/DSPMV void cblasXspmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, @@ -739,6 +817,15 @@ void cblasXspmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, beta, &y_buffer[y_offset], static_cast<int>(y_inc)); } +void cblasXspmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, + const half alpha, + const std::vector<half>& ap_buffer, const size_t ap_offset, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const half beta, + std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc) { + return; +} // Forwards the Netlib BLAS calls for STRMV/DTRMV/CTRMV/ZTRMV void cblasXtrmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, @@ -777,6 +864,12 @@ void cblasXtrmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS reinterpret_cast<const double*>(&a_buffer[a_offset]), a_ld, reinterpret_cast<double*>(&x_buffer[x_offset]), static_cast<int>(x_inc)); } +void cblasXtrmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, + const size_t n, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // Forwards the Netlib BLAS calls for STBMV/DTBMV/CTBMV/ZTBMV void cblasXtbmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, @@ -815,6 +908,12 @@ void cblasXtbmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS reinterpret_cast<const double*>(&a_buffer[a_offset]), a_ld, reinterpret_cast<double*>(&x_buffer[x_offset]), static_cast<int>(x_inc)); } +void cblasXtbmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, + const size_t n, const size_t k, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // Forwards the Netlib BLAS calls for STPMV/DTPMV/CTPMV/ZTPMV void cblasXtpmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, @@ -853,6 +952,12 @@ void cblasXtpmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS reinterpret_cast<const double*>(&ap_buffer[ap_offset]), reinterpret_cast<double*>(&x_buffer[x_offset]), static_cast<int>(x_inc)); } +void cblasXtpmv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, + const size_t n, + const std::vector<half>& ap_buffer, const size_t ap_offset, + std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc) { + return; +} // Forwards the Netlib BLAS calls for STRSV/DTRSV/CTRSV/ZTRSV void cblasXtrsv(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, @@ -995,6 +1100,14 @@ void cblasXger(const CBLAS_ORDER layout, &y_buffer[y_offset], static_cast<int>(y_inc), &a_buffer[a_offset], a_ld); } +void cblasXger(const CBLAS_ORDER layout, + const size_t m, const size_t n, + const half alpha, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc, + std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld) { + return; +} // Forwards the Netlib BLAS calls for CGERU/ZGERU void cblasXgeru(const CBLAS_ORDER layout, @@ -1187,6 +1300,13 @@ void cblasXsyr(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, &x_buffer[x_offset], static_cast<int>(x_inc), &a_buffer[a_offset], a_ld); } +void cblasXsyr(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, + const half alpha, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld) { + return; +} // Forwards the Netlib BLAS calls for SSPR/DSPR void cblasXspr(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, @@ -1211,6 +1331,13 @@ void cblasXspr(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, &x_buffer[x_offset], static_cast<int>(x_inc), &ap_buffer[ap_offset]); } +void cblasXspr(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, + const half alpha, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + std::vector<half>& ap_buffer, const size_t ap_offset) { + return; +} // Forwards the Netlib BLAS calls for SSYR2/DSYR2 void cblasXsyr2(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, @@ -1239,6 +1366,14 @@ void cblasXsyr2(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, &y_buffer[y_offset], static_cast<int>(y_inc), &a_buffer[a_offset], a_ld); } +void cblasXsyr2(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, + const half alpha, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc, + std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld) { + return; +} // Forwards the Netlib BLAS calls for SSPR2/DSPR2 void cblasXspr2(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, @@ -1267,6 +1402,14 @@ void cblasXspr2(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, &y_buffer[y_offset], static_cast<int>(y_inc), &ap_buffer[ap_offset]); } +void cblasXspr2(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, + const size_t n, + const half alpha, + const std::vector<half>& x_buffer, const size_t x_offset, const size_t x_inc, + const std::vector<half>& y_buffer, const size_t y_offset, const size_t y_inc, + std::vector<half>& ap_buffer, const size_t ap_offset) { + return; +} // ================================================================================================= // BLAS level-3 (matrix-matrix) routines @@ -1337,6 +1480,15 @@ void cblasXgemm(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, con beta_array.data(), reinterpret_cast<double*>(&c_buffer[c_offset]), c_ld); } +void cblasXgemm(const CBLAS_ORDER layout, const CBLAS_TRANSPOSE a_transpose, const CBLAS_TRANSPOSE b_transpose, + const size_t m, const size_t n, const size_t k, + const half alpha, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + const std::vector<half>& b_buffer, const size_t b_offset, const size_t b_ld, + const half beta, + std::vector<half>& c_buffer, const size_t c_offset, const size_t c_ld) { + return; +} // Forwards the Netlib BLAS calls for SSYMM/DSYMM/CSYMM/ZSYMM void cblasXsymm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPLO triangle, @@ -1403,6 +1555,15 @@ void cblasXsymm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPL beta_array.data(), reinterpret_cast<double*>(&c_buffer[c_offset]), c_ld); } +void cblasXsymm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPLO triangle, + 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, + const std::vector<half>& b_buffer, const size_t b_offset, const size_t b_ld, + const half beta, + std::vector<half>& c_buffer, const size_t c_offset, const size_t c_ld) { + return; +} // Forwards the Netlib BLAS calls for CHEMM/ZHEMM void cblasXhemm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPLO triangle, @@ -1497,6 +1658,14 @@ void cblasXsyrk(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS beta_array.data(), reinterpret_cast<double*>(&c_buffer[c_offset]), c_ld); } +void cblasXsyrk(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, + const size_t n, const size_t k, + const half alpha, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + const half beta, + std::vector<half>& c_buffer, const size_t c_offset, const size_t c_ld) { + return; +} // Forwards the Netlib BLAS calls for CHERK/ZHERK void cblasXherk(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, @@ -1591,6 +1760,15 @@ void cblasXsyr2k(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLA beta_array.data(), reinterpret_cast<double*>(&c_buffer[c_offset]), c_ld); } +void cblasXsyr2k(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE ab_transpose, + const size_t n, const size_t k, + const half alpha, + const std::vector<half>& a_buffer, const size_t a_offset, const size_t a_ld, + const std::vector<half>& b_buffer, const size_t b_offset, const size_t b_ld, + const half beta, + std::vector<half>& c_buffer, const size_t c_offset, const size_t c_ld) { + return; +} // Forwards the Netlib BLAS calls for CHER2K/ZHER2K void cblasXher2k(const CBLAS_ORDER layout, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE ab_transpose, @@ -1673,6 +1851,13 @@ void cblasXtrmm(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 cblasXtrmm(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) { + return; +} // Forwards the Netlib BLAS calls for STRSM/DTRSM/CTRSM/ZTRSM void cblasXtrsm(const CBLAS_ORDER layout, const CBLAS_SIDE side, const CBLAS_UPLO triangle, const CBLAS_TRANSPOSE a_transpose, const CBLAS_DIAG diagonal, @@ -1721,6 +1906,13 @@ 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) { + return; +} // ================================================================================================= } // namespace clblast |