By: Heikki Kultala (heikki.kultala.delete@this.gmail.com), December 8, 2022 8:26 am
Room: Moderated Discussions
Programs perform memory accesses.
What matters is when a load gets the data it needs.
This is all about latency, not bandwidth.
Bandwidth only matters when it runs low and it makes the latency grow.
CPUs do not have caches to improve bandwidth. They have caches to improve latency.
Also, you are probably measuring the bandwidth of all the memory channels, but only half of the L3 cache. There are two totally separate 32 MiB L3 caches in Ryzen 7960X.
If you are performing your accesses from single thread, or few threads of same die, you are only using half of the L3 cache.
What matters is when a load gets the data it needs.
This is all about latency, not bandwidth.
Bandwidth only matters when it runs low and it makes the latency grow.
CPUs do not have caches to improve bandwidth. They have caches to improve latency.
Also, you are probably measuring the bandwidth of all the memory channels, but only half of the L3 cache. There are two totally separate 32 MiB L3 caches in Ryzen 7960X.
If you are performing your accesses from single thread, or few threads of same die, you are only using half of the L3 cache.