3 ms·
No. The biggest hit is not the JIT. Octave has less support for SIMD operations whereas Matlab uses Intel's propriority Math Kernel Library. You will realize th
by kbumsik 10y ago
No. The biggest hit is not the JIT.
Octave has less support for SIMD operations whereas Matlab uses Intel's propriority Math Kernel Library.
You will realize that Octave gets significantly slower in matrix and vectorized operations, where JIT doesn't help much
- jordigh 10y agoOctave is more or less BLAS-agnostic. You can build it with any BLAS, including MKL and people do this (but because MKL is too restrictive, you can't redistribute the result). While you may see speedups this way, if your code isn't vectorised, as most code out there is not, you still will see big slowdowns.
- auxym 10y agoI haven't studied the MKL license, but in the python world, Christoph Gohlke is kind enough to freely distribute some python packages (notably Numpy and Scipy) built with against MKL. http://www.lfd.uci.edu/~gohlke/pythonlibs/ http://www.lfd.uci.edu/~gohlke/pythonlibs/
- gnufx 10y agoAlong with the myths about performance, the licence for the Intel stuff isn't what many people think... Anyhow, there's no need for MKL, since at least the operations that matter are as fast in OpenBLAS on x86 up to AVX512 (and infinitely faster on other architectures). You can get that with the Debian packaging of Octave, for instance, and you can fiddle it system-wide on RHEL/Fedora. Thanks for working on Octave. I wish people would put money into it rather than (in the case of my university) paying enough for Matlab to fund one or two full-time staff who could do development and support of free stuff with Octave and other things like R. Multiply that by N universities in just in this country...