These values were measured with
MEMBENCH.
MEMBENCH is a 32 bit protected mode program which runs only on plain
MSDOS (no interference from Windows). The read test reads 2 MB of continuous
uncached memory while all interrupts are disabled. The best logical
way to read this memory is an unrolled loop of 2 bursts (yes, of
course one could use 4, 8, 16 or 128 bursts (=4 Kbytes), but it wouldn't
give much difference, and it wouldn't be applicable in real programs).
If you can handle it, have a look at the source
code.