Parallel Methods in Financial Services for Intel Xeon Phi

Print Friendly, PDF & Email

phiThe pricing of options in the American market had mainly been focused on using finite difference methods. Traditional algorithms require a tremendous amount of computational power to arrive at a solution. A newer method was needed that too advantage of today’s heterogeneous systems.

In order to create an optimized vector application, it is best to optimize a scalar implementation. Inefficiencies need to be removed from the basic computer programming before further optimization for specific hardware. Various compiler option can be used that will target specific instruction sets and manage the tradeoff between fast and more accurate. Basic optimization techniques that include an understanding of math functions and how to simplify can go a long way towards better performance. From a base code implementation to optimization, still within a scalar algorithm, in the case of Newton-Raphson methods can yield up to a 35 % gain in performance.

When optimizing for a parallel SIMD system such as the Intel Xeon Phi coprocessor, it is also important to make sure that the results match the scalar system. Using vector data may cause parts of the computer program to be re-written, so that the compiler can generate vector code.

By utilizing these techniques a test case which ran through almost 126 million operations first showed a 35 % gain in performance, and then the vector version ran another 2.55 times faster.  Another optimization step is to take advantage of the multi-core capability of the host Intel Xeon CPUs. By using the #pragma SIMD directive, another increase in performance was achieved.  Further results showed that by using a combination of the 56 threads on a dual socket CPU, combined with the Intel Xeon Phi coprocessor  demonstrated over a 168 X improvement over an original scalar implementation.

The Newton-Raphson method can be used to approximate American call options. By enabling a specific algorithm to use all of the threads available on the Intel Xeon CPU and the move this code to use the  Intel Xeon Phi coprocessor, tremendous gains can be achieved. This is possible because of the similarity of the Intel Xeon CPUs and the Intel Xeon Phi coprocessor.

Source: Intel, USA

Turn Big Research into Big Results
Accelerate data analysis with Intel® Parallel Studio XE.
Try it >