- Home›
- Technology and Research›
- Intel Technology Journal›
- Multi-Core Software
Multi-Core Software
Intel® Performance Libraries: Multi-Core-Ready Software for Numeric-Intensive Computation
Ilya Burylov, Performance Library Lab, Intel Corporation
Michael Chuvelev, Performance Library Lab, Intel Corporation
Bruce Greer, Performance Library Lab, Intel Corporation
Greg Henry, Performance Library Lab, Intel Corporation
Sergey Kuznetsov, Performance Library Lab, Intel Corporation
Boris Sabanin, Performance Library Lab, Intel Corporation
Index words: Index words: mathematics, library, parallel software, multi-core, vector math, BLAS, LAPACK
Citations for this paper. Chuvelev, M.; Greer, B.; Henry, G.; Kuznetsov, S.; Burylov, I.; Sabanin, B. "Intel® Performance Libraries: Multi-Core-Ready Software for Numeric-Intensive Computation." Intel Technology Journal.
http://www.intel.com/technology/itj/2007/
v11i4/4-libraries/1-abstract.htm (November 2007).
ABSTRACT
In this paper we present the Intel® Math Kernel Library (MKL) as a mathematical software package for scientific and technical computation designed for ease of use in environments that can vary greatly. Ease of use includes the build environment (use with different compilers), optimal performance on multiple platforms (automated selection of code based on the end-user system), optimal performance (optimization of an algorithm), interfaces to other libraries (FFTW), and effective use of multi-core processors through parallelization. We also discuss how this concept of ease of use will be expanded to provide more flexibility in the use of the library without greatly expanding its size.
Much of the paper is devoted to the optimization and parallelization of the library, critical in this era of multi-core processors. We discuss some of the methods used to improve performance that largely focus on cache utilization and minimization of table look-aside buffer (TLB) misses. Specifically, we look at the parallel performance of Basic Linear Algebra Subroutines [3] (BLAS), LAPACK [1], the Vector Math Library (VML), and a sparse linear solver (PARDISO). We include a brief section on a second application library, Integrated Performance Primitives (IPP), which complements the MKL in media applications.
