Re: OpenMP - current usage in ql
Posted by
Joseph Wang-4 on
Jun 16, 2014; 12:45am
URL: http://quantlib.414.s1.nabble.com/OpenMP-current-usage-in-ql-tp15458p15468.html
There's a reason why it's default "off." :-) :-(
There's not that much parallelization going on in PDE and Tree. The OpenMP is used mainly for copying arrays so you should see some modest improvements if you are doing very large arrays, but no where close to a factor of N for N cores.
The problem is that the big speedups are for things like monte carlo, which are "Riduculously parallel." The trouble with MC is that once you parallelize, the random number generator gives you different answers, and it becomes impossible to test and also you have the possibility of very subtle bugs with the RNG coorrelations across different processors. Trying to get quantlib to have consistent RNG's in multi-core MC turns out to be a non-trivial project.
Alternatively, the algos that are being used for PDE's in quantlib particularly ones relating to tridiagonal matrix operations turn out to be terrible for parallel computing. There could be some better speedups for PDE's with different algos that are better for parallel systems. Also if you want to parallelizes, you want to use an explicit PDE scheme rather than an implicit one.
The two projects that I can think of are:
1) getting MC working for openmp or
2) putting in better parallel algos for PDE's.
If no one else is working on this, I should be in a position to do it in three months or so. Right now I'm working on the front end of my bitcoin trading system (
http://www.bitquant.com.hk/). Once I get the front-end working, I'll connect quantlib to the backend through OpenGamma and the java interface, at which point I'll need to go back to backend programming.
Also, if there are any other quantlib people going to HK for the bitcoin conference, let me know. It turns out that quantlib is perfect for bitcoin derviatives. In most financial products, you get the code and the trading system through the broker. Since bitcoin has no brokers, and trading systems have to be external which leaves a space for open source software.
The other project I'm working on is that there are a ton of HK people (including my wife) that trade warrants and callable bull-bear certificates, and most of them don't have access to any sort of analytics. The reason for this is that brokers either don't care that their customers have access to analytics, or actually don't want clients with analytics since the brokers are taking the other side of the trade and want their clients to lose money.
------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev