13.07.2015 Views

Intel(R) - Computational and Systems Biology at MIT

Intel(R) - Computational and Systems Biology at MIT

Intel(R) - Computational and Systems Biology at MIT

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Managing Performance <strong>and</strong> Memory 6MKL_ALL=2 : MKL_BLAS=1 : MKL_FFT=4MKL_ALL=2, MKL_BLAS=1, MKL_FFT=4MKL_ALL=2; MKL_BLAS=1; MKL_FFT=4MKL_ALL = 2 MKL_BLAS 1 , MKL_FFT 4MKL_ALL,2: MKL_BLAS 1, MKL_FFT,4 .The global variables MKL_ALL, MKL_BLAS, MKL_FFT, <strong>and</strong> MKL_VML, as well as the interfacefor the <strong>Intel</strong> MKL threading control functions, can be found in the mkl.h header file.Table 6-3 illustr<strong>at</strong>es how values of MKL_DOMAIN_NUM_THREADS are interpreted.Table 6-3Interpret<strong>at</strong>ion of MKL_DOMAIN_NUM_THREADS valuesValue ofMKL_DOMAIN_NUM_THREADSMKL_ALL=4MKL_ALL=1, MKL_BLAS=4MKL_VML = 2Interpret<strong>at</strong>ionAll parts of <strong>Intel</strong> MKL are suggested to try using 4 threads. The actualnumber of threads may be still different because of the MKL_DYNAMICsetting or system resource issues. The setting is equivalent toMKL_NUM_THREADS = 4.All parts of <strong>Intel</strong> MKL are suggested to use 1 thread, except for BLAS,which is suggested to try 4 threads.VML is suggested to try 2 threads. The setting affects no other part of<strong>Intel</strong> MKL.NOTE. The domain-specific settings take precedence over the overallones. For example, the "MKL_BLAS=4" value ofMKL_DOMAIN_NUM_THREADS suggests to try 4 threads for BLAS,regardless of l<strong>at</strong>er setting MKL_NUM_THREADS, <strong>and</strong> a function call"mkl_domain_set_num_threads ( 4, MKL_BLAS );" suggests thesame, regardless of l<strong>at</strong>er calls to mkl_set_num_threads().However, pay <strong>at</strong>tention to th<strong>at</strong> a function call with input "MKL_ALL", suchas "mkl_domain_set_num_threads (4, MKL_ALL);" is equivalent to"mkl_set_num_threads(4)", <strong>and</strong> thus it will be overwritten by l<strong>at</strong>ercalls to mkl_set_num_threads. Similarly, the environment setting ofMKL_DOMAIN_NUM_THREADS with "MKL_ALL=4" will be overwritten withMKL_NUM_THREADS = 2.6-11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!