Open nstiurca opened 8 years ago
Here is the code I used: https://gist.github.com/nstiurca/6b91103ad31a4d9b5c09
@nstiurca can you try again now that #11 is merged?
It's pretty possible that you will still get an error, because clblasSgemm
uses a type trick, replacing enum
parameter with UInt
, and newer API controls argument types much more strictly.
Note, that I'm currently working on a high-level interface for CLBLAS.jl based on CLArray
s. So if futures aren't essential for your work, you can just wait for a couple of days and get all "GEMM" functions out of the box.
Thank you guys. I haven't gotten my code working yet, but that is largely because I was working on a patch to address the issues with enum
/UInt
and the very strict new API. My approach is that if the C type is a specific thing like size_t
, then the corresponding Julia function should accept any Number
, and do the conversion as necessary when actually invoking ccall
. That would allow passing in 0
instead of UInt(0)
, etc.
By the way, I think enum
s should map to Cint
rather than UInt
, which I think would be the correct signed-ness and bit-size.
And I look forward to the CLArray
implementation.
See PR #13 for my aforementioned patch.
I'm trying to use GEMM with double-precision floats, but that doesn't seem supported? I tried a straight-forward adaptation of the
clblasSgemm_future.jl
andclblasSgemmRandomBufferFuture.jl
examples to useFloat64
/cl.cl_double
, but I get the following errors.and
I am using Linux Mint 17.2 (essentially Ubuntu 14.04), clBLAS v2.6, Julia v0.4, latest CLBLAS.jl master (currently 1555379).