Software Tuning, Performance Optimization & Platform Monitoring
Discussion regarding monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform updating.

Interpreting READ / WRITE from PCM

I am trying to understand the memory output from PCM of my database server in terms of how much utliization there is.

The database server is a dual socket X5680 machine. I'm using all 3 channels of memory clocked at 800 MHz.

If I take all 3 channels of memory, would there be at best about (192 * 800 000 000) / 8 = 19 200 000 000 , or ~ 19 GByte/s of throughput? I am wondering if this is too naive (as I am guessing). Is this a bidirectional (full duplex) or is this total for both directions? Does READ / WRITE from PCM reflect this or do those numbers reflect throughput including other things than just RAM (QPI maybe?).

In a sample from my DB Server, I see it exceeds 19GByte/s, so I have a feeling there is a lot more to interpreting these columns than I am currently aware:

> summary(cpu$READ + cpu$WRITE)
   Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
  0.616   1.717   2.750   4.555   6.140  24.030

0 Kudos
1 Reply

Hello Kyle,
I believe you have the calculation correct except that the 19.2 GB/s is per socket.
So the total max theoretical bandwidth is 38.4 GB/s.
How close you can get to this peak bw depends on all DIMM slots being occupied and the bandwidth benchmark test being used.

0 Kudos