Optimizing Correlation Analysis of Financial Market Data Streams Using Intel® Math Kernel Library

Download Source Code


nf-bench6.zip(16.64 KB)

This is a case study about optimizing online correlation analysis of financial market data streams using the Intel® Math Kernel Library (Intel MKL). It describes an Intel MKL-based implementation of an algorithm that processes streaming financial market data to compute codependences among stock prices. It  demonstrate that the Intel MKL-based implementation can attain almost 30x speedup on an Intel® Xeon® E5-2600 system over a reference implementation based on non-optimized statistics functions and Netlib LAPACK.

The paper is published in the December 2012 issue of the Intel Parallel Universe Magazine. The C source code of the implementation can be downloaded below.

How to use the source code


  • Download and unzip the file NF_bench6.zip. The password needed to unzip is noise_filtr
  • The "baseline" subdirectory contains an reference implementation based on non-optimized statistics functions and Netlib LAPACK.
  • The "opt_ss_lapack_asynch" subdirectory contains the optimized implementation, including a variation that is specifically ported and optimized for the Intel® Xeon Phi™ coprocessor. This variation can be enabled by defining the USE_MIC macro.
  • The ".common" subdirectory contains files used by both the baseline and the optimized implementations.
  • A makefile is provided to build the code.

 

有关编译器优化的更完整信息,请参阅优化通知