-
-
Notifications
You must be signed in to change notification settings - Fork 25.9k
PERF: use higher level BLAS functions #13210
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
Comments
Good idea! @jakirkham might be interested as well. |
So funny story. We had PR ( #11507 ), which does exactly as you suggest for this |
I think that this can be closed, as #11507 has been merged. No? |
Yes, but are we sure there are no other places in the code where higher level BLAS functions could be used? Someone could look for it.. |
Sounds right. |
Other potential candidates include... scikit-learn/sklearn/linear_model/cd_fast.pyx Line 499 in 5f0263f
scikit-learn/sklearn/linear_model/cd_fast.pyx Lines 588 to 589 in 5f0263f
scikit-learn/sklearn/linear_model/cd_fast.pyx Lines 759 to 765 in 5f0263f
scikit-learn/sklearn/cluster/_k_means.pyx Lines 68 to 71 in 301076e
scikit-learn/sklearn/cluster/_k_means.pyx Lines 130 to 133 in 301076e
|
Should each of these be in their own PRs, or can we group (say, all the |
Hm do we want benchmarks for each of them? then doing them one by one might be best. |
The hints in #13210 (comment) in the coordinate descent solvers are addressed in #22972. The one about kmeans are refactored (files renamed) in #17622 and - I think - obsolete with the work before that PR. |
closing based on the last comments in #22972 |
Now that we have access to BLAS functions cython bindings from scipy, we have access to level 3 functions which weren't present in vendored CBLAS. It would be interesting to check if they could be used in some places instead of a loop of lower level functions.
For example, in
cd_fast
I saw that:loop of
dot
(level 1) which could be replaced by agemv
(level 2)The text was updated successfully, but these errors were encountered: