Re: Removing Boost dependency from QuantLib
Posted by
Johannes Göttker-Schnetmann on
Jul 05, 2017; 10:02am
URL: http://quantlib.414.s1.nabble.com/Removing-Boost-dependency-from-QuantLib-tp18381p18401.html
Hi Hao, Peter,
I also find this very interesting. Since C++ is moving
at a better pace for some time we need at some point decide how
QuantLib reacts to this. Personally I am using modern compilers and like the
features modern C++ provides. Therefore I would appreciate if QuantLib
decides to fork or move completely to a modern C++ version.
Boost is in part an incubator of ideas, which at some point might make it into the C++ standard. For QuantLib the most prominent instances are boost::shared_pointer and boost:unique_pointer which are both in the standard for quite some time now. I would prefer to use the standard libraries instead of boost in those cases.
Kind regards,
Johannes
Hi Hao, that’s very interesting. Do you know where the performance gain is coming from, is it mostly MKL vs. UBLAS? Or are there other drivers as well?
I’d also be interested in the motivation to do this in the first place, I never thought boost as such was a bad thing?
The upgrade to C++17 is surely nice and makes sense, no doubt.
Best Regards
Peter
Hello Hao,
that's great news---I've been wondering myself if this was possible. I'll be sure to check out your project.
I suggest you also post to quantlib-users for greater exposure.
Later,
Luigi
On Tue, Jul 4, 2017 at 5:24 AM Hao Zhang via QuantLib-dev <
[hidden email]> wrote:
Hello Everyone,
I have removed all Boost dependency from QuantLib, and ported QuantLib to
C++17. The code is hosted on GitHub (https://github.com/haozhangphd/
QuantLib-noBoost).
The ported code passes all test cases, and there are significant
performance improvements in SOME functionalities. Using the QuantLib
Benchmark Suite, Quantlib-noBoost gives 3425 mflops (running time 13.15s),
while unmodified QuantLib gives 1440 mflops (running time 44.8s) on my Dell
Inspiron 13 i7348 laptop, both running under identical conditions with
identical compiler flags. The total running time of the whole test suite is
also shorter by ~10% after Boost is removed.
I will continue maintaining this project, and regularly backporting latest
commits from QuantLib. I will also make this project work on other
compilers besides GCC in the near future.
Best Regards,
Hao
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev
------------------------------
------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev
------------------------------
------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org!
http://sdm.link/slashdot_______________________________________________
QuantLib-dev mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-dev