Marius -- Marius Schamschula
On 10/21/19 7:48 PM, Marius Schamschula wrote: On Oct 21, 2019, at 2:05 PM, Andrew Janke <address@hidden <mailto:address@hidden>> wrote:
Hi, Octave maintainers,
[...snip...]
I can’t say I have any more insights about the technical benefits of one implementation or another.
However, until Apple started playing with kernel timing several macOS versions ago, all my octave installs used Atlas. Now Atlas is useless under macOS.
I didn't know about this! Is there anywhere I can read about it?
If I recall correctly, Accelerate Framework has had some technical issues (i.e. erroneous results) in the past. I don’t know if these have been fixed.
There are some nagging test failures that happen under Apple Accelerate but not under OpenBLAS. They have not been fixed AFAIK, nor are likely to be. OpenBLAS is a variant under MacPorts, though the default variant (and thus the pre-compiled package) uses the Accelerate Framework.
I'm afraid Octave.app has no space for variants: our goal is to provide a super-simple one-step drag-and-drop install for Octave on Mac. So we're interested in deciding the Right way to do this, instead of providing users options.
That wasn’t my intention. I was pointing out that this combination has been tested. I personally have installed it a the cost of having to build it locally (and every time there is a revision or upstream update). As I understand it, BLAS is actually a run-time "pluggable" thing: code compiles against the BLAS API and not a particular implementation, and then you can (in theory) drop in any conformant implementation library at load & run time. But I don't know of a good mechanism for switching between BLAS implementations, especially for a "double-click to open" Mac GUI app like Octave.app, where you can't inherit environment variables (like LD_PRELOAD/DYLD_INSERT_LIBRARIES) from a shell.
Cheers, Andrew
|