4 ms·
While I know Apple isn't exactly stopping this sort of knowledge discovery and distribution, I don't know why they aren't helping it, given that any increased d
by pmarreck 2y ago
While I know Apple isn't exactly stopping this sort of knowledge discovery and distribution, I don't know why they aren't helping it, given that any increased demand of their hardware would just result in more hardware sales
- klipklop 2y agoThey only care about sales from consumers they can lock-in and control.
- badtuple 2y agoSure. That's pretty acidic wording, but I think it's fair to say they want more consumer market share and lock-in helps that. The original post's point was that by being more open they would encourage more software to be built for their platform. That would create more demand for their products from consumers.
- mritun 2y agoAll this isn’t exactly a secret. ARM maintains and provides extensive documentation and so does Apple. Is there anything specific you think is being hidden or obfuscated in the documentation?
- pmarreck 2y agoIf that's the case, then why does the GPU portion have to be reverse-engineered for Asahi Linux? Of course I knew about the ARM portion, there are lots of ARM chips licensed to by ARM Holdings, it's not exactly a secret. But the "apple silicon" chip in its entirety, is not completely documented.
- 15155 2y agoPeripherals are not the ISA or CPU architecture: they are usually made by numerous parties.
- why_only_15 2y agoApple has designed their own GPUs since they stopped using PowerVR with A11
- 15155 2y agoWhat does that have to do with ARM64 assembly? The ISA and CPU architecture are orthogonal to all peripherals. These peripherals are accessed with memory-mapped IO using the same instructions any other program uses. Documentation about ARM64 assembly shouldn't and doesn't contain specific peripheral access info. ISA docs contain info common to all CPUs implementing the spec.
- saagarjha 2y agoThe API for programming the GPU is Metal.
- kbolino 2y agoAre any competitive GPU architectures any better? I don't think nVidia, AMD, Intel, nor PowerVR openly publish the internals of their graphics products either.
- wmf 2y agoAMD and Intel publish detailed GPU documentation.
- kbolino 2y agoOk, good to know. To wit, I found the following: AMD: https://gpuopen.com/amd-gpu-architecture-programming-documentation/ https://gpuopen.com/amd-gpu-architecture-programming-documen... Intel: https://www.intel.com/content/www/us/en/docs/graphics-for-linux/developer-reference/1-0/overview.html https://www.intel.com/content/www/us/en/docs/graphics-for-li...
- adrian_b 2y agoThere are a lot of undocumented parts of the Apple CPUs, for instance AMX. All such undocumented features can normally be exploited only by the libraries and applications provided by Apple themselves, but not by the applications and libraries written by other parties, which are disadvantaged. This is the same mechanism by which Microsoft has eliminated the competition for Microsoft Office, which used undocumented Windows APIs so that the products of any other vendor could not keep up with it, especially after the launch of any new Windows version. Now one can find some more complete documentation for the Apple CPUs as the result of reverse engineering work done by various people, but after each introduction of a new Apple CPU model the reverse engineering work may need to be done again. Examples: https://github.com/name99-org/AArch64-Explore https://github.com/name99-org/AArch64-Explore https://github.com/corsix/amx https://github.com/corsix/amx
- saagarjha 2y agoApple writes the libraries for you to use AMX. They aren’t giving themselves preferential treatment here.
- pertymcpert 2y agoApple aren't allowed to publicly support unofficial extensions of the ARM ISA.
- galad87 2y agoProbably because they don't want anyone to depend on AMX, and they want to be free to remove it or change it in the future. On the M4 for example AMX features are accessible thru SME, which is an official ARM extension.
- rarepostinlurkr 2y agoApple literally published a 200 page guide on arm64 which I linked above, they've contributed low level optimizations and tunings to NumPy, Embree and Blender to name a few projects. They clearly are helping. Perhaps you've not noticed?
- pmarreck 2y agoThey're not publishing any docs about the GPU portion. See: the rest of the thread currently. They give you the Metal API (only designed for Apple OS'es), and that's it. In contrast, AMD and Intel publish GPU documentation.