Intel MKL 10.0 and the transition to new library names

Intel MKL 10.0 and the transition to new library names

With Version 10.0, there has been a big change in how the libraries are organized and there are many new names to learn. These fundamental structural changes were made to improve the flexibility with which we can support multiple interfaces, compilers, and threading models.

To ease the transition for users of previous versions, we included with MKL 10.0 several dummy libraries to allow users to link with version 10 just as they did with previous versions. For example, on Windows* we provide mkl_c.lib which is actually a file that defines several default libraries which will automatically link mkl_intel_c.lib, mkl_intel_thread.lib, and mkl_core.lib. A similar mechanism is in place on Linux*.

Hopefully these files which were intended to be temporary have been useful. Unfortunately the dummy libraries do have some limitations documented in chapter 3 of the user guide, available onlineor in the product doc directory. Theyhave also caused some confusion. For example, anyone that wants to link the sequential version, but doesnt understand what mkl_c.lib really is (and that it will cause mkl_intel_thread.lib to be linked) might include both mkl_sequential.lib and mkl_c.lib on the link line. This can lead to unexpected results. There are other cases that can lead to confusion.

So Im writing to highlight the existence of the dummy libraries in the hope that it will minimize confusion.

Wed also like toget your feedback.How are you linking MKL 10? Are you using dummy libraries orare youlinking the new libraries. What are the hurdles to transitioning to the new libraries? I mentioned that the dummy libraries were meant to be temporary, so your feedback will be helpful in gauging how long they will remain useful.


1 post / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.