4 ms·
I didn't read through the entire thing but... * Would be wise to compare x86_64 under Rosetta as it'll support some AVX translation if I remember correctly. *
by rock_artist 5y ago
I didn't read through the entire thing but...
* Would be wise to compare x86_64 under Rosetta as it'll support some AVX translation if I remember correctly.
* I didn't see use of Apple's accelerate framework. To comply with ARM64 additional custom Apple magic is within Private extensions / ops that should use higher level frameworks such as Accelerate
- hajile 5y agoNo AVX support with Rosetta2. Rosetta2 supports up through SSE2. That's the latest instruction set to no longer be patented as of around 2020. They can use x86_64 only because AMD released x86_64 spec in 1999 (even though actual chips came much later).
- gsnedders 5y agoIt certainly claims to support many things later than SSE2, including everything up to SEE4.2, on this MacBook Air (M1): % arch -x86_64 sysctl -a | grep machdep.cpu.features machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM PBE SSE3 PCLMULQDQ DTSE64 MON DSCPL VMX EST TM2 SSSE3 CX16 TPR PDCM SSE4.1 SSE4.2 AES SEGLIM64
- creato 5y agoI think a more likely explanation is that they supported everything that fits in 128 bit registers (the same as ARM NEON). Trying to emulate code using 256 bit registers on a machine with 128 bit registers is probably difficult and pathologically slow in some cases.
- floatboth 5y agoCustom Apple instructions do… matrix stuff IIRC. Not something applicable to simple number division.
- mhh__ 5y agoHas someone actually found out what instructions do what? I assume we won't get to play with them ourselves unless they get the Microsoft treatment over the hidden APIs
- Someone 5y agoThere may not be hidden APIs. They could only use those custom instructions inside public functions that everybody can call, such as those in the Accelerate framework.
- mhh__ 5y agoI consider the hidden instructions to be at least close enough to being an API to not bother using another term (AFAICT legally ISA patents aren't considered APIs)
- ytch 5y agoMaybe these: https://gist.github.com/dougallj/7a75a3be1ec69ca550e7c36dc75e0d6f https://gist.github.com/dougallj/7a75a3be1ec69ca550e7c36dc75... https://medium.com/swlh/apples-m1-secret-coprocessor-6599492fc1e1 https://medium.com/swlh/apples-m1-secret-coprocessor-6599492...