Re: How to build the test-suite executables?

Posted by Klaus Spanderen on
URL: http://quantlib.414.s1.nabble.com/How-to-build-the-test-suite-executables-tp4837p4842.html

Hi Peter,

A while ago I''ve set-up a "QuantLib Benchmark" composed of 28 numerically
intensive tests based on the test-suite. On my P4@3Ghz, 2MB L2, 2GB Ram,
gcc-4.01, shared lib, I'm getting the following Mflops figures,

-------------------------------
Benchmark Suite QuantLib 0.3.12
-------------------------------

AmericanOption::FdAmericanGreeks        : 176 mflops
AmericanOption::FdShoutGreeks           : 200 mflops
AsianOption::MCArithmeticAveragePrice   : 333 mflops
BarrierOption::BabsiriValues            : 154 mflops
BasketOption::EuroTwoValues             : 137 mflops
BasketOption::TavellaValues             : 109 mflops
BasketOption::OddSamples                : 440 mflops
BatesModel::DAXCalibration              : 448 mflops
DigitalOption::MCCashAtHit              : 320 mflops
DividendOption::FdEuropeanValues        : 263 mflops
DividendOption::FdEuropeanGreeks        : 233 mflops
DividendOption::FdAmericanGreeks        : 145 mflops
EuropeanOption::FdGreeks                : 228 mflops
EuropeanOption::FdMcEngines             : 164 mflops
EuropeanOption::ImpliedVol              : 107 mflops
EuropeanOption::FdEngines               : 275 mflops
EuropeanOption::PriceCurve              : 278 mflops
HestonModel::DAXCalibration             : 454 mflops
HestonModel::McVsCached                 : 171 mflops
JumpDiffusion::Greeks                   :  66 mflops
LiborMarketModel::SwaptionPricing       : 253 mflops
LiborMarketModel::Calibration           :  50 mflops
LiborMarketModelProcess::CapletPricing  : 158 mflops
OldPricer::McMultiFactorPricers         : 230 mflops
QuantoOption::ForwardGreeks             :  48 mflops
RandomNumber::MersenneTwisterDescrepancy: 209 mflops
RiskStatistics::Results                 : 401 mflops
ShortRateModel::Swaps                   : 433 mflops
-------------------------------------------------------
QuantLib Benchmark Index                :  232 mflops

Please find the C++ sources enclosed in the attachment. (The benchmark should
be OS independent). Compile quantlibbenchmark.cpp with the same statement you
are using for quantlibtestsuite.cpp.


I've also played around with different compiler and options to speed-up
the QuantLib. Please find the results here


cheers
 Klaus

On Monday 19 June 2006 1:39 pm, Moreton, Peter wrote:

> OK, if anyone wants to email me with performance data regarding the
> Quantlib test-suite executing on various platforms, I'd be happy to
> maintain, and periodically publish this. The following data would be
> useful:
>
> * Quantlib version
> * Number of test cases
> * CPU Name (Intel Xeon, AMD Opteron etc)
> * CPU Clockrate
> * CPU L2 Cache
> * Memory
> * Elapsed time to run all test-cases
>
> The compiler used on my benchmarks is GCC v4.0.3. I'm sure I could squeeze
> a few percent by messing with compiler switches, and maybe a couple of
> hundred percent by optimizing the code to keep the CPU piplelines full etc.
> However, my interest is in porting the code to an FPGA, which might yield
> gains of a hundred-fold or more.
>
> Regards, Peter Moreton
>
>
>
>
>
> ________________________________
>
> From: Luigi Ballabio [mailto:[hidden email]]
> Sent: Mon 19/06/2006 12:13
> To: Moreton, Peter
> Cc: [hidden email]
> Subject: Re: [Quantlib-users] How to build the test-suite executables?
>
> On 06/19/2006 01:09:23 PM, Moreton, Peter wrote:
> > Thanks Luigi, I have the whole of Quantlib running just fine under
> > Ubuntu now.
>
> Good.
>
> > My interest is in the area of performance of the algorithms, and I
> > wonder is there any place on the 'net where the Quantlib test-suite
> > benchmarks have been gathered together for comparison purposes?
>
> I don't think so. Drop a line here on the mailing list if you want to
> gather such data.
>
> > My results so far are:
> >
> > test-suite, 236 test cases:    AMD XP2000+ 1.7Ghz, 256Kb L2, 1Gbyte
> > RAM    : 10 minutes 23 seconds
> >                                           Intel Pentium-M  1.5Ghz, 1Mb
> > L2, 512Mbyte RAM : 8 minutes 24 seconds
>
> What compiler are you using on the two machines? (Of course it's gcc
> for Ubuntu, but I don't know what version it distributes.) How about
> compiler options?
>
> Luigi
>
>
> ----------------------------------------
>
> All generalizations are false, including this one.
> -- Mark Twain
>
>
>
> _______________________________________________
> QuantLib-users mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/quantlib-users

ql benchmark.ppt.gz (63K) Download Attachment
quantlibbenchmark.cpp (8K) Download Attachment