You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Should there be an API, callable from both dispatcher (libonemkl.so) and underlying backend libraries to report the oneMKL version supported by each library?
Problem statement
Using oneMKL could involve libraries from multiple vendors (or other sources) to provide backend libraries for different devices. How can a user easily detect if the versions involved are inconsistent with one another? This could occur if one backend has not been updated in line with the dispatcher and other backends, or because of a misconfiguration of LD_LIBRARY_PATH, etc when multiple versions are installed on the system.
Preferred solution
One possible solution would be a onemkl::utility namespace with a routine to return the MAJOR, MINOR and PATCH numbers, e.g. version_number(major,minor,patch). With auto backend selection, the dispatcher would need to have its own version of the routine too.
I'm assuming all header files would be at the top level. If not, inconsistent versions would need to be considered there too. Providing a simple program to call these routines to check consistency would also be helpful.
The text was updated successfully, but these errors were encountered:
Summary
Should there be an API, callable from both dispatcher (libonemkl.so) and underlying backend libraries to report the oneMKL version supported by each library?
Problem statement
Using oneMKL could involve libraries from multiple vendors (or other sources) to provide backend libraries for different devices. How can a user easily detect if the versions involved are inconsistent with one another? This could occur if one backend has not been updated in line with the dispatcher and other backends, or because of a misconfiguration of LD_LIBRARY_PATH, etc when multiple versions are installed on the system.
Preferred solution
One possible solution would be a onemkl::utility namespace with a routine to return the MAJOR, MINOR and PATCH numbers, e.g. version_number(major,minor,patch). With auto backend selection, the dispatcher would need to have its own version of the routine too.
I'm assuming all header files would be at the top level. If not, inconsistent versions would need to be considered there too. Providing a simple program to call these routines to check consistency would also be helpful.
The text was updated successfully, but these errors were encountered: