-
-
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
Show methods for LBTConfig and LBTLibraryInfo #40357
Conversation
This is beautiful! Very nice! I would say that in the overall LBTConfig output it's quite useful to know whether a loaded library is LP64 or ILP64; I can think of two ways to do this. Either print the libraries out in two separate categories:
Or print out the interface alongside each library:
|
Good suggestion, I implemented the second variant. (BTW, we don't have an |
Should we print where the LAPACK also comes from? |
If a separate LAPACK is loaded, it will show up in this list. |
@staticfloat Do we want to call it |
Let me note that the symbols in |
No, we don't care about the suffix here. ILP64 is a semantic difference, suffixing is just naming, it doesn't matter to the user at all. |
Thanks so much for this @crstnbr! |
Should we mark |
Yes please. |
@crstnbr Would you be up for making the deprecation PR? |
@ViralBShah will do. |
@ViralBShah I see that, on master, there already is a Can you tell me what should happen in the deprecation PR? Currently, I could only think of |
Ah yes, we don't show deprecation warnings by default anymore. You need to start Julia with |
Fair enough, thanks for the info. Although I wonder how useful deprecations are then as they might not be seen by many users. (I guess package developers can be trained to check with the cmd line flag) |
I think we mark it as a deprecation, and put it in our HISTORY and announce the changes as part of the 1.7 release. That would give us a smooth path to removing it in 1.8. Also, we did a package scan, and almost nobody uses it - and whoever does will be happier with the new API. So, I don't actually anticipate any major issue. |
* show methods for LBTConfig and LBTLibraryInfo * add interface information to LBTConfig printing * interface information in show fallback of LBTConfig and LBTLibraryInfo * LBTConfig(...) instead of LBTConfig() for n>3 libs
* show methods for LBTConfig and LBTLibraryInfo * add interface information to LBTConfig printing * interface information in show fallback of LBTConfig and LBTLibraryInfo * LBTConfig(...) instead of LBTConfig() for n>3 libs
* show methods for LBTConfig and LBTLibraryInfo * add interface information to LBTConfig printing * interface information in show fallback of LBTConfig and LBTLibraryInfo * LBTConfig(...) instead of LBTConfig() for n>3 libs
See discussion in JuliaLinearAlgebra/MKL.jl#73. Because of the new libblastrampoline facilities,
BLAS.get_config()
is replacingBLAS.vendor()
as the way to check which BLAS is used. However, the current output is very hard to parse and contains lots of unnecessary information. This PR improves the printing of the relevant LBT types.Before the PR:
After the PR:
Should I also add tests for the new printing?
(cc: @ViralBShah, @staticfloat)