I'm looking for high performance code (needs to run in real-time), preferably open source, but if there is nothing that's free and high-perf, I'll take something well supported and of high quality for a cost.
Any suggestions?
These are the ones I've found so far, in no particular order:
CodeCogs
GSL
Cephes
Boost MathToolkit
Blitz++
TNT
Check the links on mathtools.net. The page for statistics libraries for C++ has links. Another page http://www.thefreecountry.com/sourcecode/mathematics.shtml lists few more.
Have you checked the 'R project'? I think you can call 'R objects' from C/C++.
I'm surprised nobody's mentioned ALGLIB: http://www.alglib.net/
Root has pretty good statistical support. At least as us particle physics types judge these thing. Works in cint interpretation or as a native c++ library.
TNT is for matrix calculations but doesn't have any statistics functionality. (e.g. erf, mean/std/cov etc)
I haven't used Boost Math Toolkit, but skimming through the documentation, it looks like it has the opposite problem, e.g. lots of goodies for scalar calculations, but no support (that I could find) for multivariate situations.
I have used the IT++ library in the past, this library supports ACML and MKL routines trough BLAS and LAPACK. If it are calculations that need to happen fast, there is the possibility of using this library together with HPC, this is an although undocumented feature so some thought will be required.
The focus on this library is however positioned on matrix calculations, but many normal mathematic and statistic functions can be found in this framework thanks to its excellent signal processing support.