The most important technical library in the world
Bruce Greer · ACM SIGPLAN Fortran Forum · 1998
Intel provides several libraries known as the Performance Library Suite to address several computational areas: signal processing, image processing, speech and character recognition and linear algebra. This latter library is known as the Math Kernel Library, or MKL.In this paper we discuss the methods we use to achieve high performance on the current version. These methods revolve primarily around the management of memory and minimization of branch costs. Memory management involves compensating for the mismatch in main memory performance compared to the processor consumption rate, latency hiding, cache management and TLB management.We also discuss the SMP capabilities and the performance thereof.We discuss the direction the library will be taking including additions that will be made to the offerings: multithreaded LAPACK, cblas interface, and a powerful graphical DLL builder to create custom libraries no larger than the end user requires. Finally we will point out that using libraries such as MKL permits the user to profit from the architectural advances in new processors even if the tools, especially compilers, may not be able to fully exploit the features. There will be versions of MKL which exploit features of the recently announced Katmai processor, and the library will be fully developed for the Merced processor when it is introduced.