3 ms·
Genuine question: how often am I memory bandwidth constrained? Or to put it another way, if I had infinite memory bandwidth, how much faster would browsing/gam
by fbdab103 3y ago
Genuine question: how often am I memory bandwidth constrained?
Or to put it another way, if I had infinite memory bandwidth, how much faster would browsing/gaming/compiling become?
- deleted 3y ago[deleted]
- champtar 3y agoI don't know how often it's a problem, but I work for a company doing software video encoding, and we always fill up all the dimm slots on servers to have as much bandwidth as possible, even if we have only really use maybe 1/4 of the RAM. I'm not sure any of the standard Linux tools can show you memory bandwidth usage easily (maybe perf), I know we use Intel PCM (https://github.com/intel/pcm https://github.com/intel/pcm) and AMDuProfPCM (https://www.amd.com/en/developer/uprof.html https://www.amd.com/en/developer/uprof.html)
- semi-extrinsic 3y agoDepends on the task you are concerned with; see Roofline model [1]. It boils down to "how many ops will you do for each value you load from RAM to cache". I don't know about typical consumer workloads, but e.g. for physics simulations, any time you need to solve a system where the value in a point depends on a lot of other points you are bandwidth limited. Like solving the pressure equation in fluid simulations. Also I believe a lot of traditional database workloads fall into this category. You can measure memory bandwidth with the STREAMS benchmark. [1] https://en.m.wikipedia.org/wiki/Roofline_model https://en.m.wikipedia.org/wiki/Roofline_model
- dathinab 3y agolets say instead of infinite you get 16 instead of 2 channels then while probably all applications will profit for most consumer applications you might not notice much of a difference through you can measure some difference in benchmarks one exceptions would be various graphic editing software if you do stuff like editing 8k multi channel video content For compiling you might feel a noticeable difference. It won't be 8x but if you pair it with enough cores and things which have tons of parallel compilation parts it will really feel noticeable faster. But for most gaming you instead of getting 8x the bandwidth you probably benefit more from a speed improvement e.g. running 6000MT/s DDR5. Anyway you can get it today ;) The M2 Ultra has a pretty insane memory bandwidth (and so had the M1 Ultra).