Measuring DDR bandwidth

I would like to measure DDR bandwidth of the Xavier during runtime.
Following is the tegrastats output :

RAM 11444/15688MB (lfb 427x4MB) SWAP 0/7844MB (cached 0MB) CPU [3%@2265,2%@2263,0%@2217,0%@2265,1%@2265,0%@2265,3%@2265,6%@2265] EMC_FREQ 29%@2133 GR3D_FREQ 56%@1377 APE 150 MTS fg 0% bg 6% AO@37C GPU@38.5C Tboard@37C Tdiode@40.5C AUX@37.5C CPU@38C thermal@37.8C PMIC@100C GPU 4008/4008 CPU 1079/1109 SOC 4008/3977 CV 3394/3393 VDDRQ 1542/1542 SYS5V 3185/3181

out of that ,  EMC_FREQ 29%@2133 is something that should be closest to what I am are seeking. Detailed description of EMC_FREQ from here
EMC X%@Y , X is Percent of EMC memory bandwidth being used, relative to the current running frequency. and Y is EMC frequency in megahertz.
From Xavier’s datasheet, its DDR bandwidth is 127.1 GiBs/s.

So, Does that 29% mean Xavier is consuming 29% of 127.1GiB/s = 36.8GiB/s DDR bandwidth?
And, some details on that current running frequency ‘Y’ would be really appreciated as well.
Best Regards, Mohit

I would suggest to try some benchmark tool instead of calculating by reading tegrastats.

Some old discussion we had on TX2 platform.

Thanks for the quick reply.
I read that discussion and found some unanswered questions. I have asked there, lets see if anyone was able to measure it properly.
In case you know any additional details, kindly share. I would like to measure it when a neural network inference is being calculated on a Xavier.
Thanks in advance.

Hi BMohit,

I think the correct way to use tegrastats emc utility should be 2133 * 29% * <magic #>.

However, this magic number varies from platform to platform so I am not sure what is it on Xavier. Still checking with the spec. will update to you later.

I think it should be 2133 *0.29 *64 /1000 = 39.58 GBps.

Many thanks WayneWWW!

Can you explain what the magic number means?
I think it should be the bus width. According to Xavier datasheet, the DRAM memory interface has bus width of 256. So I think magic# should be 256. Please clarify on this.