FREEDOM251

Freedom251 › PC benchmark tools

LMbench

Free plan LinuxWindows

Visit LMbench Alternatives Pricing

LMbench's own site

What LMbench is

LMbench is a free, self-hosted benchmark suite for examining system performance, with a focus on data movement and its cost. Its workloads include memory, disks, file systems, networks, pipes, virtual memory, processor operations, cache and TLB behavior. Latency measurements report time and CPU cycles per operation; bandwidth measurements include megabytes per second and CPU cycles per megabyte. Other listed tests cover null process execution time, context switching, network transfers, socket operations and large-transfer throughput. The command-line suite can compare output with other system results included in the repository using `make see`. The documented systems include UNIX/POSIX, Linux, FreeBSD, NetBSD, Solaris, SunOS, AIX, HP-UX, IRIX, OSF/1 and partial Windows NT support; listed platforms are Linux and Windows. The software is GPL-2.0 licensed and costs nothing. Its documentation cautions that other system activity, especially CPU cache and cycle effects, can influence results, and recommends repeated runs and output comparisons.

Who it suits

LMbench suits developers and system administrators who want command-line measurements across memory, storage, process and network workloads. Users should verify its documented operating-system support and account for run-to-run system activity.

What it does well

  • Covers memory, disks, file systems and networks
  • Reports latency and bandwidth measures
  • Includes repository result comparisons through `make see`
  • Command-line use and automation are listed
  • GPL-2.0 licensed

What to know first

  • Windows NT support is partial
  • Other system activity can affect measurements
  • Documentation recommends multiple runs for comparison
  • No releases are listed on the repository tags page

Limits

Windows NT support is partial. Benchmark results can be affected by other activity on the system, particularly CPU cache and CPU cycle effects; the documentation recommends repeated runs and output comparisons.

Plans

PlanBilled and limitsPrice
lmbenchGPL-2.0 licensed benchmark softwareFree

As github.com lists them, read 9 Oct 2026. The maker's own page has the final word.

Getting started

  1. Open the LMbench project on GitHub.
  2. Use a Linux or Windows environment; the documentation also names UNIX/POSIX systems and several Unix variants.
  3. Run the benchmark commands provided in the README.
  4. Run the benchmarks several times and compare the outputs.
  5. Use `make see` to compare against system results included in the repository.

LMbench is a free, self-hosted command-line suite for measuring low-level system performance. It is best suited to engineers and administrators who want detailed measurements of data movement and system operations. Its breadth and included comparison results are useful, but partial Windows NT support and sensitivity to system activity limit how confidently it fits every machine.

Overview

Rather than reduce performance to one score, LMbench reports latency as time and CPU cycles per operation, and bandwidth as megabytes per second and CPU cycles per megabyte. That makes it a better fit for investigating particular system costs than for a quick, consumer-facing ranking.

The suite covers memory, disks, file systems, networks, pipes and virtual memory, with measurements for process execution and context switching. Its documentation identifies the project as the lmbench 2alpha8 net release and provides commands for running benchmarks. It is GPL-2.0 licensed and self-hosted, so it does not depend on a hosted service or subscription.

Key features

System and data-movement measurements

Coverage includes cache-line size, effective TLB size, cache hierarchy, operation latency, memory bandwidth and SysV semaphore latency. The `stream` benchmark reports memory bandwidth using kernels from John McCalpin's STREAM benchmarks. For network performance, LMbench measures transfers per second, CPU cycles per transfer, socket, bind and close rates, and throughput for large transfers. This range is valuable when a team needs to isolate a bottleneck; it is less suited to users looking for a simple overall performance grade.

Timing controls and comparisons

The `benchmp()` timing harness is designed to measure system performance under a fixed load, with controls for parallel processes, warmup and repetitions. The README's `make see` command compares output against system results included in the repository, and results can be listed by operating system. Those reference results give users a starting point for comparison, though they do not remove the need to account for differences in system conditions.

The README specifically warns that other activity can affect measurements, particularly through CPU cache and CPU cycle effects. It recommends running benchmarks several times and comparing the output. That discipline matters: a single run is not a dependable basis for a performance decision.

Pricing

LMbench is free: the `lmbench` plan costs nothing and includes GPL-2.0 licensed benchmark software. There is no free trial because the software is already free, and there is no paid plan to unlock additional capabilities. Readers do, however, need to run it in their own environment rather than use a hosted deployment.

Platforms

LMbench is categorized for Linux and Windows, while the documentation names a much wider range of systems: UNIX/POSIX, Linux, FreeBSD, NetBSD, Solaris, SunOS, AIX, HP-UX, IRIX, OSF/1 and Windows NT, with Windows NT identified as partial support. The README also gives a LoongArch run command using `make results OS=mips64el`. It mentions Euler and CentOS, with instructions to uncomment lines 250 and 251 for those operating systems. This breadth makes it particularly relevant to teams working across Unix-like systems; Windows users should treat support as limited rather than equivalent to the Unix coverage.

The repository's tags page has no releases, so users should expect to work from the repository rather than rely on a published release series.

Who it's for

LMbench is a strong fit for systems engineers, administrators and researchers who need detailed measurements of memory, process, file-system or network behavior and can repeat runs under controlled conditions. Its command-line workflow and comparison data suit users comfortable interpreting low-level metrics. It is a weaker choice for people who want a polished consumer benchmark, a managed service, or dependable full Windows support.

Pros and cons

  • Pros: Broad measurement coverage spans memory, storage, processes, virtual memory and networking, allowing targeted investigation rather than reliance on one aggregate score.
  • Pros: Included comparison results and the `make see` workflow provide a practical reference point without a separate service.
  • Pros: The timing harness includes controls for parallel processes, warmup and repetitions, useful for structured measurement.
  • Cons: CPU cache effects and other system activity can shift results, so credible comparisons require several runs and care over conditions.
  • Cons: Windows NT support is partial, making the tool a less convincing choice for Windows-first environments.
  • Cons: With no repository releases, users must be comfortable working from the project repository.

Alternatives

For teams that need continuous profiling or monitoring rather than a command-line benchmark suite, consider Guance Container Monitoring, which has a free plan covering up to 10 hosts, 10,000 metric series per day and 10 million log records per day with seven-day rolling retention. Middleware is another free-start option, with its Free Forever plan including up to 100GB of data, up to 1,000 RUM sessions and up to 20,000 synthetic checks.

Grafana Cloud Application Observability may suit teams that want hosted application observability: its free plan is always free and includes 2,232 host hours, while its Pro plan charges $0.03 a month, billed at $0.025 per host hour plus a $19 monthly platform fee, with additional usage pay as you go. Coroot is worth considering when self-hosted monitoring is the priority: its Community Edition is free, self-hosted and includes core features under Apache 2.0.

For Kubernetes-focused profiling, Metoro Kubernetes Profiling offers a free Hobby plan for one cluster, one user and two nodes with 28-day retention. OneUptime is an alternative for teams seeking an open-source platform they can inspect, modify and self-host. Parca is a free, Linux-focused option whose components are available under the Apache 2 License. Pyroscope may be preferable for continuous profiling, with a free plan that includes 50 GB ingested per month and 14-day retention.

For broader directories of options, browse Continuous Profiling Tools or PC Benchmark Software.

Verdict

Choose LMbench if you need free, self-hosted, low-level measurements across memory, processes, file systems and networks, and can repeat runs to account for system activity. Its combination of detailed metrics and included comparison results is its clearest advantage. Look elsewhere if you need full Windows support, a hosted workflow or continuous monitoring rather than benchmark runs.

Verdict

LMbench offers broad system benchmark coverage and a way to compare results with data included in its repository. Its own documentation makes repeated runs important because system activity can affect measurements.

Questions

How much does LMbench cost?

LMbench is free; the listed plan is free.

Is LMbench open source?

The repository identifies its license as GPL-2.0.

Which platforms does it support?

The listed platforms are Linux and Windows. Its documentation names UNIX/POSIX, Linux, FreeBSD, NetBSD, Solaris, SunOS, AIX, HP-UX, IRIX, OSF/1, and partial Windows NT support.

What does LMbench measure?

Its listed areas include memory, disks, file systems, networks, pipes, virtual memory, cache, TLBs, processor operations, process execution, and context switching.

Can I compare results with other systems?

Yes. The `make see` command compares results with other system results included in the repository.

What license does LMbench use?

LMbench is licensed under GPL-2.0.

Facts from LMbench's own pages

Areas measured
Listed benchmark areas include memory, disks, file systems, networks, pipes, and virtual memory systems. · github.com, 8 Oct 2026
Benchmark coverage
The change log lists benchmarks for cache-line size, effective TLB size, cache hierarchy, operation latency, memory bandwidth, and SysV semaphore latency. · github.com, 9 Oct 2026
Benchmark focus
The benchmark documentation describes its theme as measuring data movement and its cost. · github.com, 8 Oct 2026
CLI or automation
Yes · github.com, 23 Sept 2026
Compare results
The README says `make see` displays results compared with the other system results included in the repository. · github.com, 9 Oct 2026
Comparison database
Yes · github.com, 23 Sept 2026
Free plan
Yes · github.com, 23 Sept 2026
Included comparison data
The README refers to other system results included in the repository and documents listing results by operating system. · github.com, 9 Oct 2026
Latency and bandwidth
It lists time and CPU cycles per operation for latency, and MB per second and CPU cycles per MB for bandwidth. · github.com, 8 Oct 2026
License
The repository identifies its license as GPL-2.0. · github.com, 9 Oct 2026
Linux distributions
The README mentions Euler and CentOS and says to uncomment lines 250 and 251 for those operating systems. · github.com, 9 Oct 2026
LoongArch
The README gives `make results OS=mips64el` as the command to run the benchmark on LoongArch. · github.com, 9 Oct 2026
Maker information
The repository is under Intel's GitHub organization; the repository page provides no maker description or website. · github.com, 9 Oct 2026
Measurement caveat
The README warns that benchmarks can be affected by other activity on the system, particularly CPU cache and CPU cycle effects. · github.com, 8 Oct 2026
Memory testing
The change log says the `stream` benchmark reports memory bandwidth using kernels from John McCalpin's STREAM and STREAM version 2 benchmarks. · github.com, 9 Oct 2026
Network measurements
Network measurements listed include transfers per second, CPU cycles per transfer, socket/bind/close per second, and throughput for large transfers. · github.com, 8 Oct 2026
Operating systems
UNIX/POSIX; Linux; FreeBSD; NetBSD; Solaris; SunOS; AIX; HP-UX; IRIX; OSF/1; Windows NT (partial) · github.com, 23 Sept 2026
Platform references
The benchmark documentation lists all Unix systems and Windows NT among its systems, and the README gives a LoongArch run command using OS=mips64el. · github.com, 8 Oct 2026
Process measurements
The benchmark list includes null process execution time and context switching. · github.com, 8 Oct 2026
Purpose
The repository describes lmbench as a benchmark release that can be run with `make results`. · github.com, 9 Oct 2026
Release availability
The repository's tags page states that there are no releases there. · github.com, 9 Oct 2026
Repeat measurements
The README recommends several runs and comparing their output because benchmarks can be affected by other activity on the system, especially CPU cache and CPU cycle effects. · github.com, 9 Oct 2026
Repeat runs
The README recommends running benchmarks several times and comparing the output. · github.com, 8 Oct 2026
Run comparisons
The README says `make see` compares results with other system results included in the repository. · github.com, 8 Oct 2026

Where LMbench stands on Freedom251

Look at these too