---
name: "mbw"
section: "1"
platform: "linux"
package: "mbw"
version: "1.2.2-1.2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/mbw"
---

# mbw(1)

Memory BandWidth benchmark

## NAME

mbw - Memory BandWidth benchmark

## SYNOPSIS

**mbw** \[options\] arraysize\_in\_MiB\

## DESCRIPTION

**mbw** determines available memory bandwidth by copying large arrays of data in memory.

## OPTIONS

- \-q

  **Quiet; suppress informational messages.**

- \-a

  **Suppress printing the average of each test.**

- \-n \<number\>

  **Select number of loops per test**

- \-t \<number\>

  **Select tests to be run. If no -t parameters are given the default is to run all tests. -t0: memcpy() test, -t1: dumb (b\[i\]=a\[i\] style) test, -t2: memcpy() with arbitrary block size**

- \-b \<bytes\>

  **Block size in bytes for -t2.**

- \-h

  **Show quick help.**

## USAGE

**mbw** will allocate two **arraysize** arrays in memory and copy one to the other. Reported 'bandwidth' is the amount of data copied over the time this operation took.

Obviously **mbw** needs twice **arraysize** MiBytes (1024\*1024 bytes) of physical memory - you'd better switch off swap or otherwise make sure no paging occurs. Needless to say that it should not be run on a busy system.

## TODO

Multiple thread support. Better configurability, including using getopt() for parsing arguments.

## AUTHOR

andras.horvath@gmail.com
