[atlas-devel] 3.11.31: Hello 64-bit ARM!
Brought to you by:
rwhaley,
tonyc040457
From: R. C. W. <rcw...@ls...> - 2014-11-03 04:48:24
|
Guys, I have posted 3.11.31. The big news is that ATLAS now has some preliminary support for ARM64. This is thanks to Applied Micro (www.apm.com) that sent me a pre-production system, and particularly to Dave Nuechterlein, who gave me complete patches (including optimized kernels!) to make ATLAS install easily on the platform. Support is still a little crude. Right now, all 64-bit ARM machines are going to show up same architecture (ARM64), and I haven't written the probe for their SIMD yet (though I think all ARM64 chips have to have it as an option). The install will still use the SIMD kernel provided by Dave even w/o the probe, so no worries. On that note, I would like to point out this bug I just found: https://sourceforge.net/p/math-atlas/bugs/245/ Basically, it looks like SUMMARY.LOG is giving me authorship credit regardless of who wrote the kernel. If you are using an ARM64 chip, should have Dave's name in there, but currently doesn't. I would expect that there will be many different ARM64 chips that are different enough that they will demand differing archs, so we'll make the arch names better as machines become available (a64-xxxx, or something). 3.11.31 should also fix these bugs: https://sourceforge.net/p/math-atlas/bugs/243/ https://sourceforge.net/p/math-atlas/bugs/242/ https://sourceforge.net/p/math-atlas/bugs/241/ It also seems to correctly default to not using cache-based communication on non-x86 hardware, finally. I have now picked up the basics of ARM64 (I know the official name is AArch64, but abbreviating the unique part and spelling out the common part offends me so mightily that I cannot bring myself to use that as a name. Seems like insisting everyone call me RCW MaleHuman), which should allow for more tuning as time allows. I haven't yet learned the SIMD stuff myself, and so I have not extended the code generators to use it yet. Right now Dave's kernels are the only way to use ARM's SIMD FLOPS in ATLAS. If you've been waiting for ARM64, thank Dave, since he did all the work so far. Cheers, Clint ATLAS 3.11.30 released 11/02/14, highlights of changes from 3.11.30: * Added basic support for ARM64 - Pre-production hardware provided by Applied Micro (www.apm.com) - Extensive patches handling almost all ARM64 functionality provided by Dave Nuechterlein of apm, including assembly kernels * Fixed bug in ammsearch where generated code often used wrong/slow kerns * Fixed bug in 'Right' case of tsymm, where recursion called 'Left' * Fixed bug where threadpool only starts a handful of cores when first call is made with small problem |