Skip to content

Simple benchmark for memory throughput and latency

License

Notifications You must be signed in to change notification settings

nuumio/tinymembench

This branch is 24 commits ahead of ssvb/tinymembench:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

97e2603 · Nov 7, 2021

History

95 Commits
Nov 6, 2021
Feb 13, 2017
Mar 14, 2016
Nov 6, 2021
Nov 7, 2021
Nov 7, 2021
Dec 9, 2018
Sep 24, 2013
Nov 7, 2021
Nov 7, 2021
Nov 7, 2021
Sep 10, 2011
Sep 10, 2011
Mar 31, 2016
Nov 7, 2021
Nov 7, 2021
Nov 6, 2021
Dec 9, 2018
Dec 9, 2018

Repository files navigation

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

About

Simple benchmark for memory throughput and latency

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 70.4%
  • Assembly 28.7%
  • Makefile 0.9%