diff options
author | Cedric Nugteren <web@cedricnugteren.nl> | 2017-05-12 20:01:33 -0700 |
---|---|---|
committer | Cedric Nugteren <web@cedricnugteren.nl> | 2017-05-12 20:01:33 -0700 |
commit | f151e56daa617e3327826f06f0765d1673fa8cfd (patch) | |
tree | 66396978988720155adf4f6eb21b921758ccd8aa /src/clblast_c.cpp | |
parent | 86e8df60f1598760511b059b42a9e4f9dddfa150 (diff) |
Added the IxAMIN routines: absolute minimum version of IxAMAX
Diffstat (limited to 'src/clblast_c.cpp')
-rw-r--r-- | src/clblast_c.cpp | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/clblast_c.cpp b/src/clblast_c.cpp index b6a64749..d2656274 100644 --- a/src/clblast_c.cpp +++ b/src/clblast_c.cpp @@ -820,6 +820,73 @@ CLBlastStatusCode CLBlastiHamax(const size_t n, } catch (...) { return static_cast<CLBlastStatusCode>(clblast::DispatchExceptionForC()); } } +// AMIN +CLBlastStatusCode CLBlastiSamin(const size_t n, + cl_mem imin_buffer, const size_t imin_offset, + const cl_mem x_buffer, const size_t x_offset, const size_t x_inc, + cl_command_queue* queue, cl_event* event) { + try { + return static_cast<CLBlastStatusCode>( + clblast::Amin<float>(n, + imin_buffer, imin_offset, + x_buffer, x_offset, x_inc, + queue, event) + ); + } catch (...) { return static_cast<CLBlastStatusCode>(clblast::DispatchExceptionForC()); } +} +CLBlastStatusCode CLBlastiDamin(const size_t n, + cl_mem imin_buffer, const size_t imin_offset, + const cl_mem x_buffer, const size_t x_offset, const size_t x_inc, + cl_command_queue* queue, cl_event* event) { + try { + return static_cast<CLBlastStatusCode>( + clblast::Amin<double>(n, + imin_buffer, imin_offset, + x_buffer, x_offset, x_inc, + queue, event) + ); + } catch (...) { return static_cast<CLBlastStatusCode>(clblast::DispatchExceptionForC()); } +} +CLBlastStatusCode CLBlastiCamin(const size_t n, + cl_mem imin_buffer, const size_t imin_offset, + const cl_mem x_buffer, const size_t x_offset, const size_t x_inc, + cl_command_queue* queue, cl_event* event) { + try { + return static_cast<CLBlastStatusCode>( + clblast::Amin<float2>(n, + imin_buffer, imin_offset, + x_buffer, x_offset, x_inc, + queue, event) + ); + } catch (...) { return static_cast<CLBlastStatusCode>(clblast::DispatchExceptionForC()); } +} +CLBlastStatusCode CLBlastiZamin(const size_t n, + cl_mem imin_buffer, const size_t imin_offset, + const cl_mem x_buffer, const size_t x_offset, const size_t x_inc, + cl_command_queue* queue, cl_event* event) { + try { + return static_cast<CLBlastStatusCode>( + clblast::Amin<double2>(n, + imin_buffer, imin_offset, + x_buffer, x_offset, x_inc, + queue, event) + ); + } catch (...) { return static_cast<CLBlastStatusCode>(clblast::DispatchExceptionForC()); } +} +CLBlastStatusCode CLBlastiHamin(const size_t n, + cl_mem imin_buffer, const size_t imin_offset, + const cl_mem x_buffer, const size_t x_offset, const size_t x_inc, + cl_command_queue* queue, cl_event* event) { + try { + return static_cast<CLBlastStatusCode>( + clblast::Amin<half>(n, + imin_buffer, imin_offset, + x_buffer, x_offset, x_inc, + queue, event) + ); + } catch (...) { return static_cast<CLBlastStatusCode>(clblast::DispatchExceptionForC()); } +} + // MAX CLBlastStatusCode CLBlastiSmax(const size_t n, cl_mem imax_buffer, const size_t imax_offset, |