pricing derivatives

SciFinance speeds up the game with CUDA and OpenMP

NVIDIA CUDA

By harnessing the power of NVIDIA GPUs or multi-CPU workstations, SciFinance parallel codes for Monte Carlo pricing models run blazingly fast. SciFinance GPU-enabled codes achieve astounding acceleration of up to 30x-220x, while SciFinance OpenMP-compliant codes yield near linear acceleration on multi-CPU workstations.

SciFinance is a code synthesis technology for building derivatives pricing and risk models. SciFinance automatically produces C/C++ pricing model source code from concise, keyword-rich pricing model specifications. SciFinance supports the modeling of any derivative instrument that can be valued using PDE or Monte Carlo techniques.

At a keystroke, quantitative developers at financial institutions around the world enjoy easy access to state of the art pricing model techniques and methodologies with the comfort that all pricing model source code is open to inspection and editing.

Now, SciFinance provides the same easy access to parallel computing code synthesis for Monte Carlo models, including complex processes, path dependencies and Bermudan exercise/callable structures.

Manual programming for parallel systems is arcane. The code may be difficult to debug and full performance hard to achieve. But now, SciFinance users need only add a single keyword to a pricing model specification to generate obfuscated parallel pricing model source code (code is compiler ready with an identical pricing function argument list to serial version and numerical test results within the MC variance) -- no programming and blazingly fast performance.


Achieve astounding accelerations with NVIDIA CUDA / GPU-enabled codes

parallel computing

NVIDIA GPU-enabled parallel code executes critical sections of the pricing model source code on the graphics card, taking advantage of its highly parallel architecture. By simply adding the keyword "CUDA" to a model specification, SciFinance synthesizes GPU-enabled codes that demonstrate astounding accelerations: 30X-220X faster than serial codes on a standard PC. One PC equipped with several inexpensive NVIDIA GPU cards can replace many racks of blades with a single box, with commensurate reduction in both footprint and energy consumption.

Use your workstation's multi-processor power with OpenMP

parallel computing

Nearly all modern desktop computers have multiple CPUs, usually from two to eight, while workstations may have many more. SciFinance users can take advantage of this power by simply adding the keyword “OpenMP” to a model specification. The synthesized parallel code is compliant with the OpenMP standard and with existing Windows and Unix compilers. It executes in the multi-processor environment with nearly linear speed-up, e.g. a factor of 3.9X on a quad-core PC or 22X on a 24 CPU workstation.

Real world case study: Equity Linked Note

Read on for a description of a SciFinance-generated model and how it runs with SciFinance parallel computing.

Description

The Note is linked to a basket of N indices. If, on semi-annual observation dates, the performance of all indices is above the knock out barrier for that date, the Note redeems early at par plus a bonus coupon. If early redemption does not occur, then at maturity either i) the Note redeems at par plus a maturity coupon, or ii) if the performance of at least n of the indices have even been below the knock in barrier during the tenor, on a continuously observed basis, then the Note redeems at the performance percentage of the worst index.

Pricing Model

The Heston stochastic volatility model is used for each index, including cross correlation of index levels and volatility of variance among indices. The paths are constructed with quasi-random (Sobol sequence) numbers and Brownian bridge scrambling. Continuity corrections (again via a Brownian bridge) convert discretely monitored knock-in barrier observations to continuous ones.

Timing

N=6 indices, n=3 required for knock-in, one million quasi-random paths, each of 16 time steps per year over a maturity of 3 years, requiring a 864-dimensional Sobol sequence. Standard deviation of computed Note PV is 0.01%. (All timings on an Intel Xeon E5405 2.0GHz CPU running Windows XP with a NVIDIA® Tesla C1060.)

Serial

OpenMP (quad-core PC)

Single GPU

Dual GPU

75 seconds 19.0 seconds 1.03 seconds 0.69 seconds
  (x 3.94) (x 73) (x 109)

SciFinance GPU OpenMP parallel computing

 

SciFinance and the NVIDIA Tesla C1060 are certified for use with the Dell® Precision T5500 Workstation.

Need more information on CUDA GPU and OpenMP parallel computing with SciFinance? Contact us >>

Home

Communicate


NEWS

Reval Speeds Up Pricing Complex Instruments in the Cloud with SciFinance

"We were looking for a cost-effective and easy-to-deploy solution to improve the pricing of complex derivative instruments using PDEs or Monte Carlo simulation in our SaaS product. We found it with SciFinance and GPU-enabled models, without having to become experts in parallel coding or CUDA."

CUDA-Enabled Codes

"...the only thing you need to add to get GPGPU acceleration is literally 'CUDA'; it's a single keyword, not a fundamentally different way to formulate the math equations. This allows SciComp's customers to save even more time while also improving accuracy."

Beyond 3D