3 ms·
So, this is about Apple's undocumented AMX instructions, issued from CPU, executed on a special accelerator execution unit. Is there one such unit per CPU core
by Tepix 4y ago
So, this is about Apple's undocumented AMX instructions, issued from CPU, executed on a special accelerator execution unit.
Is there one such unit per CPU core?
- my123 4y agoM1 has one AMX unit per cluster AFAIK. This however can and does change between different chips.
- microtonal 4y agoYes, there is one per core cluster. The title is a bit misleading, because it suggests that going to two or three cores will scale linearly, though it won't be much faster. See here for sgemm benchmarks for everything from the M1 to M1 Ultra and 1 to 16 threads: https://github.com/danieldk/gemm-benchmark#1-to-16-threads https://github.com/danieldk/gemm-benchmark#1-to-16-threads
- adrian_b 4y agoNo. So the title is misleading, even if it is true that you get this performance with a program that uses a single CPU core.
- MuffinFlavored 4y ago> So, this is about Apple's undocumented AMX instructions, issued from CPU, executed on a special accelerator execution unit. CPU instruction -> AMX instruction -> AMX result -> CPU? How are these kinds of things usually kept in sync/in a manageable state? Like does the CPU block until the AMX returns?