Skip to content

cslabcbnu/SHM-bench

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

shm-bench

shm-bench is a microbenchmark tool designed to -bench-test shared memory access patterns across multiple NUMA (Non-Uniform Memory Access) nodes.
It launches multiple threads, distributes them across all available NUMA nodes and CPU cores, and simultaneously performs uncontrolled memory operations on a shared memory region — all without synchronization or locking.

The goal is to trigger NUMA-related behavior (e.g., local vs. remote memory access, page migrations, hinting faults) and analyze memory access performance under high contention.


Features

  • Multithreaded memory workload generator
  • NUMA-aware thread placement
  • Shared memory -bench without synchronization
  • Useful for analyzing page locality, NUMA faults, and cache/memory traffic

Build Instructions

Ensure you have the NUMA development libraries installed:

sudo apt update
sudo apt install libnuma-dev

Usage

./shmstress --size <size_in_mb> --threads <num_threads>

Arguments

--size <size_in_mb>: Size of the shared memory region in megabytes (e.g., 512) --threads <num_threads>: Number of threads to spawn across NUMA nodes

Example

./shmstress --size 1024 --threads 16

About

Benchmarks for triggering shared pages

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages