DDR <-> ARM memory Bandwidth

Purpose:

The purpose of this test is to measure bandwidth for several combinations read/write, such as rd, rdwr, cp, frd, fcp, bzero, bcopy

Output:

This test outputs how the lmbench function is called followed by the data:

The first data is the size of the block moved in MB. The second is the data rate in MB/s.

Additional Information

This test is setup to move 1MB of data between ARM and DDR in various ways:

From the command line: bw_mem 1M [rd | rdwr | cp | frd | fcp | bzero | bcopy]

rd - measures the time to read data into the processor. It computes the sum of an array of integer values. It accesses every fourth word.

rdwr - measures the time to read data into memory and then write data to the same memory location. For each element in an array it adds the current value to a running sum before assigning a new (constant) value to the element. It accesses every fourth word.

cp - measures the time to copy data from one location to another. It does an array copy: dest[i] = source[i]. It accesses every fourth word.

frd - measures the time to read data into the processor. It computes the sum of an array of integer values.

fcp - measures the time to copy data from one location to another. It does an array copy: dest[i] = source[i].

bzero - measures how fast the system can bzero memory.

bcopy - measures how fast the system can bcopy data.