CUDA: Many fixes in the backend

This commit is contained in:
Philippe Tillet
2015-05-13 02:20:44 -04:00
parent f55e499ef5
commit 05e730f06e
17 changed files with 104 additions and 76 deletions

View File

@@ -129,8 +129,14 @@ mproduct_parameters::mproduct_parameters(unsigned int simd_width
strcat(gemm_name, suffix);
strcat(reduce_name, suffix);
if(backend==driver::OPENCL)
stream << " __attribute__((reqd_work_group_size(" << p_.local_size_0 << "," << p_.local_size_1 << ",1)))" << std::endl;
switch(backend)
{
#ifdef ISAAC_WITH_CUDA
case driver::CUDA: stream << "#include \"helper_math.h\"" << std::endl; break;
#endif
case driver::OPENCL: stream << " __attribute__((reqd_work_group_size(" << p_.local_size_0 << "," << p_.local_size_1 << ",1)))" << std::endl; break;
}
stream << KernelPrefix(backend) << " void " << gemm_name << "(" << _size_t << " M, " << _size_t << " N, " << _size_t << " K, "
<< Global(backend) << " " << sdtype << "* C, " << _size_t << " Cld," << _size_t << " Coff," << _size_t << " Cstride1, "
<< sdtype << " alpha,"