-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Cache MKL plans #3101
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
base: master
Are you sure you want to change the base?
Cache MKL plans #3101
Conversation
- Make sure DLIB_USE_MKL_SEQUENTIAL and DLIB_USE_MKL_WITH_TBB are added to the list of preprocessor definitions when appropriate - Add path to libtbb. You don't want to mix libraries in /opt/intel/oneapi/... and /usr/lib/x86...
@davisking Ready for an initial review. Linking to libmkl_rt.so was broken. Mainly because by default it loads libmkl_intel_thread.so at runtime using
For the BLAS stuff i'm now using cmake_dependent_option which simplifies the super messy logic in the CMakeLists.txt script. |
@davisking Do you mind having a look at this? Or are you wanting to merge the CUDA stuff first? I would rather get this in before i touch cmake revamping stuff again as I would be duplicating certain things in here already. |
@davisking hold fire on merging. I haven't got the windows jobs working correctly with openblas and MKL. |
…on Github Actions
…e, it can throw. Don't know why gcc and clang were happy with that - attempt 1 at downloading openblas
- trying to fix openblas download
… actions - why is openblas not working
…g right on windows
Right, i'm gonna need some help. I don't have a windows machine i can use for dev. I'm giving up trying to debug the windows builds simply by looking at github actions logs. |
This PR caches MKL plans. This substantially improves performance when using MKL sequential and MKL TBB. Not benchmarked with MKL RT but I expect the same results.