Re:Memory access on the Apple M1 processor
by titzer on Wednesday January 06, 2021 @03:21PM
(#25661840)
Thanks for clarifying. But this isn't any fundamental difference IMO. There isn't any functional limitation in an Intel core that means it cannot saturate the memory bandwidth from a single core, unless I am missing something.
[ Parent
| on HN ]
Re:Memory access on the Apple M1 processor
by nkurz on Wednesday January 06, 2021 @08:17PM
(#25665900)
One could argue that it's not "fundamental", but it's definitely a functional limitation of the current Intel cores. The memory bandwidth of a single core is hardware limited by the number "Line Fill Buffers". Each buffer keeps track of one outstanding L1 cacheline miss, thus the number of LFB's limits the memory level parallelism (MLP). "Little's Law" gives the relationship between the latency, outstanding requests, and throughput. With 10 LFB's and the current latency of memory, it's physically impossible for a single core to use all available memory bandwidth, especially on machines with more than 2 memory channels.
The M1 chip allows higher MLP, presumably because it has more LFB's per core (or maybe they are using different approach where the LFB's are not per-core?). I apologize for using so many abbreviations. I searched to try to find a better intro, but didn't find anything perfect. I did come across this thread that (apparently) I started several years ago at the point where I was trying to understand what was happening: https://community.intel.com/t5/Software-Tuning-Performance/S....
Re:Memory access on the Apple M1 processor
by AnbeSivam on Thursday January 07, 2021 @03:00AM
(#25668489)
Came across someone else mentioning the similar bandwidth constraint w.r.to LFB per core a month back.
Re:Memory access on the Apple M1 processor
by jeffbee on Wednesday January 06, 2021 @03:23PM
(#25661880)
I agree, it's not fundamental. It is, in particular, not that other popular myth, that it's "because ARM". It's only that 1 core on an Intel chip can have N-many outstanding loads and 1 core of an M1 can have M>N outstanding loads.