Intel Math Kernel Library on cluster
Intro: Intel has released Math Kernel Library MKL10.0. If you are using C/C++ in the cluster, particularly, if you are bioinformatics or biomedical programmer, you could gain tremendous performance in the followings:
* Linear Algebra (BLAS and LAPACK)
* Linear Algebra (Sparse solvers). Solve large, sparse, symmetric, and asymmetric linear systems of equations on shared-memory multiprocessors (we have two processors each node, you can collect both of them for one job)
* Fast Fourier Transforms (FFT) Employ multi-dimensional FFT routines (1D up to 7D) with mixed radix support and a modern, easy-to-use C/Fortran interface.
* Vector Math Library Increase application speeds with vectorized implementations of computationally intensive core mathematical functions (power, trigonometric, exponential, hyperbolic, logarithmic, and so on).
* Vector Random Number Generators (such as binomial, Gaussian distribution ...etc),
The current MKL is NOT cluster version. However, we are willing to purchase cluser version of MKL when enough user make the request. The cluster version of MKL will be able to implment large-scale
Linear Algebra and Fast Fourier Transforms by distributing the work over a large number of processors in the cluster.
The complete MKL10.0 userguide can be downloaded (PHS network required)
How to use Intel Math Kernel Library on cluster
Step 1: Please read "how to setup your working environment" and do the following:
a. Include the sentence of "module load intel/mkl/10.1/default" in the module-loading blocks in your .bashrc file
b. Type ". .bashrc" in your terminal to enable the above configuration. To confirm your configuration is correct, type the following:
[testy@n137 ~] module list
Currently Loaded Modulefiles:
1) intel/cce/10.1/default 2) intel/mkl/10.1/default
check your c/c++ compiling path.
[testy@n137 ~]$ which icc
/source/intel/cce/10.1.008/bin/icc
[testy@n63 ~]$ which icpc
/source/intel/cce/10.1.008/bin/icpc
check your LD_LIBRARY_PATH path.
[testy@n63 namd]$ echo $LD_LIBRARY_PATH
/source/intel/mkl/10.0.1.014/lib/em64t
Step 2. Compiling and running your program
The example testMKL.c and the Makefile can be downloaded to your working directory.
[testy@n63 ~]$ cd /shr/home/testy/your_working_dir
[testy@n63 ~]$ make -f testMKL.mak
icpc -I/source/intel/mkl/10.0.1.014/include -o testMKL.o -c testMKL.c
icpc -L/source/intel/mkl/10.0.1.014/em64t -lmkl -lguide -lpthread -Wall -O2 -g0 testMKL.o -o testMKL
run your program .
[testy@n63 ~]$ ./testMKL
The complex dot product is: ( 140.00, 20.00)
If you have above result, it indicates you are ready to use intel compiler for more complicated tasks.
The complete MKL10.0 userguide can be downloaded (PHS network required)
|