Live data from Hacker News

Benchmarks for Blaze, A high-performance C++ math library

code.google.com

31–34 of 34 posts

Re: Benchmarks for Blaze, A high-performance C++ math library

#31
I remember this library being discussed on the Eigen list in 2012. Here's the thread:

http://thread.gmane.org/gmane.comp.lib.eigen/3423

The main critique at the time was that Blaze always assumes perfectly aligned data, including inside(!) the matrix, and pads the data with zeros if that is not the case. Of course, this makes it impossible to map external data, which is a huge downside. I'm not sure if that is still the case, but from skimming through the docs it doesn't look to me like this has changed.

Re: Benchmarks for Blaze, A high-performance C++ math library

#32
post #31

I remember this library being discussed on the Eigen list in 2012. Here's the thread: http://thread.gmane.org/gmane.comp.lib.eigen/3423 The main critique at the time was that Blaze always assumes perfectly aligned data, including inside(!) the matrix, and pads the data with zeros if that is not the case. Of course, this makes it impossible to map external data, which is a huge downside. I'm not sure if that is still…

An old thread on the Eigen list also mentioned that the Blaze folks were a little tricky with their benchmarks. Some of the reported performance numbers with Blaze were for calls out to Intel MKL routines. Eigen also supports MKL as a kernel backend, but the Blaze folks failed to enable this feature for the reported comparisons, if I recall.

Re: Benchmarks for Blaze, A high-performance C++ math library

#33
post #31

I remember this library being discussed on the Eigen list in 2012. Here's the thread: http://thread.gmane.org/gmane.comp.lib.eigen/3423 The main critique at the time was that Blaze always assumes perfectly aligned data, including inside(!) the matrix, and pads the data with zeros if that is not the case. Of course, this makes it impossible to map external data, which is a huge downside. I'm not sure if that is still…

An old thread on the Eigen list also mentioned that the Blaze folks were a little tricky with their benchmarks. Some of the reported performance numbers with Blaze were for calls out to Intel MKL routines. Eigen also supports MKL as a kernel backend, but the Blaze folks failed to enable this feature for the reported comparisons, if I recall.

> a little tricky

That's rather generous. If you're going to do serious work with Eigen, or Armadillo, or Blaze, you're going to include a BLAS library like OpenBLAS or Intel MKL (if you can afford it). Not including them is dubious, at best.

Re: Benchmarks for Blaze, A high-performance C++ math library

#34

Does Blaze implement its own BLAS subroutines? Or does it wrap around an existing BLAS library?

Turns out that it does implement its own, but it also has the possibility of wrapping existing libraries:

https://bitbucket.org/blaze-lib/blaze/src/e09d62ee714745b297...

Of course, if you're seriously going to use this library, you're going to use an established BLAS library like OpenBLAS or Intel MKL.

Post reply on HN