oneMKL icon indicating copy to clipboard operation
oneMKL copied to clipboard

API to return oneMKL version number?

Open ghost opened this issue 5 years ago • 2 comments

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.

ghost avatar Jul 30 '20 16:07 ghost

Hi @edwards-nag ! Thanks for the proposal! That makes a lot of sense, we will plan to add this features.

jasukhar avatar Aug 03 '20 14:08 jasukhar

Thanks @jasukhar

ghost avatar Aug 12 '20 13:08 ghost