3 ms·
This is the first I have heard of Apple doing this, and I feel like, in my position, I would have heard of this... I have just spent some time searching around
by saurik 5y ago
This is the first I have heard of Apple doing this, and I feel like, in my position, I would have heard of this... I have just spent some time searching around myself trying to find any such reference and the closest I could find was the opposite: an article from Electrical Engineering Journal that said that Apple could have, but stated they didn't need to and pretty strongly implied they didn't, even going so far as to claim that they couldn't in any drastic way due redirections "even Apple" has on ARM licensees.
https://www.eejournal.com/article/whats-inside-apple-silicon-processors/ https://www.eejournal.com/article/whats-inside-apple-silicon...
Can you provide some more information on this? I would love to be able to hit them on this, as this would actually be really upsetting to a lot of people I know who work on toolchains.
- mumblemumble 5y agohttps://blog.adafruit.com/2021/01/15/the-secret-apple-m1-amx-apple-matrix-coprocessor-reverseengineering-m1-apple-apple-erikengheim/ https://blog.adafruit.com/2021/01/15/the-secret-apple-m1-amx... The rumor I've heard is that Apple is keeping their custom extensions to the ISA undocumented in deference to ARM's desire not to have the instruction set just completely fragment into a bunch of mutually incompatible company-specific dialects. It's worth noting that the article you link predates the public release of the M1 by a good 10 months. Given how secretive Apple tends to be about these sorts of things, one can only assume that it was based almost entirely on rumor and conjecture.
- therealcamino 5y agoUndocumented or not, they would be hard to hide: I would think you could scan through MacOS binaries and find them, if they exist. (I guess it's still possible they exist even if you don't find them, maybe unused or only produced by JITs, but that doesn't sound very useful.)
- mumblemumble 5y agoYup. If you follow the links from that article, you'll get to the site of the person who found and documented them. It doesn't look like it took too much effort. But it's not really about trying to prevent anyone from discovering that these opcodes exist. It's about trying to discourage their widespread use. If it's undocumented, then they don't have to support it, and anyone who's expecting support knows to steer clear. That gives them more freedom to change the behavior of this coprocessor in future iterations of the chip. And people can still get at them, because Apple uses them in system libraries such as the OS X implementation of BLAS.