The following table shows the time for a memory read on a page that is already open. The first column is the memory type, the second is the frequency, the third is the CAS latency, and the fourth is the number of nanoseconds required to complete a read operation.
I've marked the DDR3 1600 CAS 9, which is about the least expensive DDR3 memory available. There is slower DDR3 memory available, but it doesn't cost any less. I've also marked DDR4 2133 CAS 12, because 2133 is the fastest DDR4 memory that Intel supports on Haswell-E, and CAS 12 is the shortest CAS latency available at a reasonable price. I have seen DDR4 2133 CAS 10, for an outrageously high price, but even that has higher latency than DDR3 1600 CAS 9.
For sequential scans of memory, the only thing that matters is the frequency, and DDR4 will generally beat DDR3. But for random memory access, latency counts, and the table below shows that DDR3 is generally superior on that measure.
To explain how these numbers are computed:
1) The actual frequency is half the listed frequency; for example DDR3 1600 actually operates at 800 Mhz.
2) The data transfer itself takes 4 clock cycles on DDR3 and 8 clock cycles on DDR4.
For example, for DDR3 1600 CAS 9, we have 9+4=13 clock cycles at 800 Mhz. To get the time in microseconds, we divide the number of clock cycles by the frequency in Mhz. We then multiply by 1000 to convert to nanoseconds. 13/800 * 1000 = 16.25 nanoseconds.
I've marked the DDR3 1600 CAS 9, which is about the least expensive DDR3 memory available. There is slower DDR3 memory available, but it doesn't cost any less. I've also marked DDR4 2133 CAS 12, because 2133 is the fastest DDR4 memory that Intel supports on Haswell-E, and CAS 12 is the shortest CAS latency available at a reasonable price. I have seen DDR4 2133 CAS 10, for an outrageously high price, but even that has higher latency than DDR3 1600 CAS 9.
For sequential scans of memory, the only thing that matters is the frequency, and DDR4 will generally beat DDR3. But for random memory access, latency counts, and the table below shows that DDR3 is generally superior on that measure.
Code:
DDR3 2400 10 11.67
DDR3 2400 11 12.50
DDR3 2133 10 13.13
DDR3 2400 12 13.33
DDR3 1866 9 13.93
DDR3 2133 11 14.06
DDR3 2400 13 14.17
DDR3 1600 8 15.00
DDR3 1866 10 15.00
DDR3 2133 12 15.00
DDR4 2933 14 15.00
DDR4 2933 15 15.68
DDR3 2133 13 15.94
DDR3 1866 11 16.07
DDR3 1600 9 16.25 <-- basic DDR3
DDR4 2933 16 16.36
DDR3 1333 7 16.50
DDR4 2666 14 16.50
DDR4 2133 10 16.88
DDR3 1866 12 17.14
DDR4 2666 15 17.25
DDR3 1600 10 17.50
DDR4 2133 11 17.81
DDR3 1333 8 18.00
DDR4 2666 16 18.00
DDR4 2400 14 18.33
DDR3 1066 6 18.75
DDR3 1600 11 18.75
DDR4 2133 12 18.75 <-- DDR4
DDR4 2400 15 19.17
DDR3 1333 9 19.50
DDR4 2133 13 19.69
DDR4 2400 16 20.00
DDR3 1066 7 20.63
DDR4 2133 14 20.63
DDR3 1333 10 21.00
DDR4 2133 15 21.56
DDR3 1066 8 22.50
DDR4 2133 16 22.50
DDR3 1066 9 24.38
1) The actual frequency is half the listed frequency; for example DDR3 1600 actually operates at 800 Mhz.
2) The data transfer itself takes 4 clock cycles on DDR3 and 8 clock cycles on DDR4.
For example, for DDR3 1600 CAS 9, we have 9+4=13 clock cycles at 800 Mhz. To get the time in microseconds, we divide the number of clock cycles by the frequency in Mhz. We then multiply by 1000 to convert to nanoseconds. 13/800 * 1000 = 16.25 nanoseconds.