This is a simple memory benchmark program, which tries to measure the peak
bandwidth of sequential memory accesses and the latency of random memory
accesses. Bandwidth is measured by running different assembly code for
the aligned memory blocks and attempting different prefetch strategies.
The benchmark results for some hardware can be found in the wiki page:
https://github.com/ssvb/tinymembench/wiki
This program can be compiled in either linux or windows (via mingw32 and msys)
by simply running make:
$ make
Adding extra optimization options is possible (in linux):
$ CFLAGS="-O2 -march=atom -mtune=atom" make
Example of crosscompiling for ARM (also in linux):
$ CC=arm-linux-gnueabihf-gcc CFLAGS="-O2 -mcpu=cortex-a9" make
Example of crosscompiling and running the benchmark on android device:
$ CC=arm-linux-gnueabihf-gcc CFLAGS="-O2 -mcpu=cortex-a8 -static" make
$ adb push tinymembench /data/local/tmp/tinymembench
$ adb shell /data/local/tmp/tinymembench
Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.
2,522 followers · starred Jan 2025
6,826 followers · starred Oct 2020
779 followers · starred May 2017
234 followers · starred Apr 2018
This is a simple memory benchmark program, which tries to measure the peak
bandwidth of sequential memory accesses and the latency of random memory
accesses. Bandwidth is measured by running different assembly code for
the aligned memory blocks and attempting different prefetch strategies.
The benchmark results for some hardware can be found in the wiki page:
https://github.com/ssvb/tinymembench/wiki
This program can be compiled in either linux or windows (via mingw32 and msys)
by simply running make:
$ make
Adding extra optimization options is possible (in linux):
$ CFLAGS="-O2 -march=atom -mtune=atom" make
Example of crosscompiling for ARM (also in linux):
$ CC=arm-linux-gnueabihf-gcc CFLAGS="-O2 -mcpu=cortex-a9" make
Example of crosscompiling and running the benchmark on android device:
$ CC=arm-linux-gnueabihf-gcc CFLAGS="-O2 -mcpu=cortex-a8 -static" make
$ adb push tinymembench /data/local/tmp/tinymembench
$ adb shell /data/local/tmp/tinymembench
Not written in Markdown, so it's shown here as plain text — view it formatted on GitHub.
2,522 followers · starred Jan 2025
6,826 followers · starred Oct 2020
779 followers · starred May 2017
234 followers · starred Apr 2018