The purpose of this test is to measure bandwidth for several combinations read/write, such as rd, rdwr, cp, frd, fcp, bzero, bcopy
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.
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.