-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Export dotu with generic fallbacks #8300
Comments
|
On 11 Sep 2014, at 9:14 am, Simon Kornblith [email protected] wrote:
|
Write a wrapper that gets inlined to each of them? |
On 11 Sep 2014, at 9:17 am, John Myles White [email protected] wrote:
|
Because |
On 11 Sep 2014, at 9:22 am, Simon Kornblith [email protected] wrote:
|
I think of |
Out of curiosity, are the BLAS versions any faster than the Julia versions? At least for Float32, the gap has narrowed a lot thanks to SIMD. |
@jiahao It's really |
Oh right, duh. |
@timholy That's worth testing. @andreasnoack said that the difference wasn't big, but at the moment the generic version doesn't use |
@dlfivefifty I vaguely remember a discussion of @simonster The Julia implementation is faster for small
And for BLAS
Off course the native Julia implementation can be made much faster for all |
On 11 Sep 2014, at 12:10 pm, Andreas Noack [email protected] wrote:
|
@andreasnoack Some of the overhead for small |
#8134 seems like the clean way to avoid that allocation. |
I think you are right. For An alternative solution could possible be that we'll be able return |
If I can get Jeff to merge it soon, #8134 is intended to address exactly that observation. (it allows the compiler to automatically use alloca for exactly this use case) |
Explicitly calling BLAS functions is an "expert" feature and they should confirm to the argument types that the BLAS functions themselves take. |
I have the following inconsistency in Julia v0.3.0:
julia> BLAS.dotu([1.+im,2.],[3.,4.+im])
11.0 + 5.0im
julia> BLAS.dotu([1.,2.],[3.,4.])
ERROR:
dotu
has no method matching dotu(::Int64, ::Array{Float64,1}, ::Int64, ::Array{Float64,1}, ::Int64)in dotu at linalg/blas.jl:156
The text was updated successfully, but these errors were encountered: