clMathLibraries / clBLAS

a software library containing BLAS functions written in OpenCL
Apache License 2.0
839 stars 240 forks source link

AutoGemm only enabled for ColumnMajor matrices? #161

Closed hughperkins closed 8 years ago

hughperkins commented 8 years ago

Per https://github.com/clMathLibraries/clBLAS/wiki/AutoGemm#autogemm-parameters , it looks like autogemm is only run for the orders specified in orders parameter of AutoGemmParameters.py. However, looking at AutoGemmParameters.py, orders is specified as, https://github.com/clMathLibraries/clBLAS/blob/master/src/library/blas/AutoGemm/AutoGemmParameters.py#L74 :

orders = [ "clblasColumnMajor" ]

Does this mean that AutoGemm is only activated for ColumnMajor matrices?

guacamoleo commented 8 years ago

Yes, that's right. AutoGemm is capable of generating row major kernels. However the gemm implementation can, for example, from row-major NT to column-major TN. So, AutoGemm only needs to generate column-major kernels for clBLAS.

hughperkins commented 8 years ago

Ah, ok, I see. The implementation has seemed to be using AutoGemm for row major kernels that I've passed to it, as far as I can see, which makes more sense now :-)