# akopytov/sysbench

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/akopytov-sysbench).**

6,744 stars · 1,143 forks · C · GPL-2.0

## Links

- GitHub: https://github.com/akopytov/sysbench
- awesome-repositories: https://awesome-repositories.com/repository/akopytov-sysbench.md

## Description

sysbench is a database and system benchmark tool used to measure the throughput and latency of database systems and hardware components. It functions as a multi-threaded workload generator and hardware performance profiler designed to determine how systems perform under heavy load.

The project serves as a scriptable benchmark engine, allowing for the definition of custom performance scenarios through scripts. It simulates real-world traffic patterns by generating random data based on mathematical probability distributions, such as Zipfian, Gaussian, or Pareto.

Capabilities cover database performance benchmarking, including response time and transaction throughput, as well as hardware resource stress testing for CPU, memory, and I/O subsystems. The tool also provides system performance analysis for filesystem operations and thread scheduling, supported by execution metrics and latency percentile calculations.

## Tags

### Data & Databases

- [Performance Benchmarking](https://awesome-repositories.com/f/data-databases/database-performance-utilities/performance-benchmarking.md) — Measures throughput and latency by running synthetic workloads and transactions against database systems to test speed and scalability.
- [Online Transactional Simulations](https://awesome-repositories.com/f/data-databases/database-performance-utilities/performance-benchmarking/online-transactional-simulations.md) — Simulates real-world online transaction patterns to measure database performance and scalability. ([source](https://github.com/akopytov/sysbench#readme))

### Development Tools & Productivity

- [Scriptable Benchmark Engines](https://awesome-repositories.com/f/development-tools-productivity/scriptable-benchmark-engines.md) — Provides a framework for defining custom performance scenarios through scripts that simulate specific database or system operations.

### DevOps & Infrastructure

- [Database Workload Simulation](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration/workload-scheduling-scaling/batch-workload-execution/database-workload-simulation.md) — Executes predefined computational tasks and database queries to isolate and measure the performance of specific hardware subsystems.
- [Custom Benchmark Scenarios](https://awesome-repositories.com/f/devops-infrastructure/workload-orchestration/workload-definitions/custom-benchmark-scenarios.md) — Allows users to define complex benchmark scenarios by implementing scripts that simulate specific application behaviors. ([source](https://github.com/akopytov/sysbench#readme))

### Networking & Communication

- [Synthetic Workload Generation](https://awesome-repositories.com/f/networking-communication/traffic-shaping/scaling/traffic-distribution/multi-threaded-load-balancing/synthetic-workload-generation.md) — Simulates concurrent application behaviors to determine how systems perform under heavy load.

### Programming Languages & Runtimes

- [Multi-threaded Execution](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/concurrency/execution-models/multi-threaded-execution.md) — Spawns multiple concurrent execution threads to saturate system resources and measure maximum throughput and scalability.
- [Random Data Generators](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/language-features/core-conceptual-frameworks/programming-language-concepts/random-number-generation/random-number-generators/random-data-generators.md) — Generates synthetic data access patterns using Zipfian and Gaussian distributions to simulate realistic system load.
- [Embedded Lua Scripting](https://awesome-repositories.com/f/programming-languages-runtimes/embedded-lua-scripting.md) — Uses an embedded Lua interpreter to define custom workload logic and benchmark scenarios without recompiling.

### Software Engineering & Architecture

- [Modular Extension Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-extension-architectures.md) — Separates the core benchmarking engine from database-specific implementations through a consistent internal API for different backends.
- [Tail Latency Measurement](https://awesome-repositories.com/f/software-engineering-architecture/performance-reliability/performance-engineering/latency-optimization/tail-latency-measurement.md) — Tracks individual request durations to compute statistical distributions and tail latency metrics for performance analysis.

### System Administration & Monitoring

- [Database Request Latency Measurement](https://awesome-repositories.com/f/system-administration-monitoring/database-request-latency-measurement.md) — Measures response times and efficiency by simulating various workloads to test database operation speed. ([source](https://github.com/akopytov/sysbench/blob/master/Dockerfile))
- [Database Throughput Measurement](https://awesome-repositories.com/f/system-administration-monitoring/database-throughput-measurement.md) — Quantifies throughput and latency by executing synthetic workloads against database systems under various load conditions. ([source](https://github.com/akopytov/sysbench/blob/master/Makefile.am))
- [Request Performance Metrics](https://awesome-repositories.com/f/system-administration-monitoring/request-performance-metrics.md) — Calculates request rates and latency percentiles to determine how a system performs under load. ([source](https://github.com/akopytov/sysbench#readme))
- [System Performance Analyzers](https://awesome-repositories.com/f/system-administration-monitoring/system-performance-monitors/system-performance-analyzers.md) — Measures the efficiency of operating system components, including filesystem operations and thread scheduling, under various load conditions.

### Testing & Quality Assurance

- [Hardware Performance Benchmarking](https://awesome-repositories.com/f/testing-quality-assurance/hardware-performance-benchmarking.md) — Provides standardized tests to measure the performance limits of CPU, memory, and I/O subsystems. ([source](https://github.com/akopytov/sysbench/blob/master/Makefile.am))
- [Performance Profiling](https://awesome-repositories.com/f/testing-quality-assurance/performance-testing-analysis/performance-profiling.md) — Measures the performance limits of CPU, memory, and I/O subsystems using standardized computational tasks.
- [System Resource Stressing](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/execution-and-infrastructure/automated-test-generators/system-resource-stressing.md) — Evaluates the performance ceilings of CPU, memory, and I/O subsystems using standardized computational tasks and system benchmarks.
- [System Performance Benchmarking Tools](https://awesome-repositories.com/f/testing-quality-assurance/system-performance-benchmarking-tools.md) — Provides a comprehensive performance testing tool for measuring the throughput and latency of database systems and hardware components.
- [System Resource Benchmarking](https://awesome-repositories.com/f/testing-quality-assurance/system-resource-benchmarking.md) — Evaluates the performance of the operating system's filesystem and thread scheduling under load. ([source](https://github.com/akopytov/sysbench#readme))
- [Performance Histograms](https://awesome-repositories.com/f/testing-quality-assurance/performance-testing-analysis/performance-analysis/bootstrapped-performance-statistics/performance-histograms.md) — Generates histograms and detailed execution statistics to gain insights into system behavior and bottleneck analysis. ([source](https://github.com/akopytov/sysbench/blob/master/README.md))
- [Probabilistic Traffic Generation](https://awesome-repositories.com/f/testing-quality-assurance/real-world-workload-benchmarking/probabilistic-traffic-generation.md) — Mimics real-world traffic by generating random data based on Zipfian, Gaussian, and Pareto probability distributions. ([source](https://github.com/akopytov/sysbench#readme))
- [Workload Scenario Modeling](https://awesome-repositories.com/f/testing-quality-assurance/workload-scenario-modeling.md) — Creates scriptable benchmark scenarios and traffic patterns using mathematical distributions to mimic real world application behavior.

### Part of an Awesome List

- [Benchmarking Tools](https://awesome-repositories.com/f/awesome-lists/data/benchmarking-tools.md) — Provides a modular, multi-threaded benchmarking framework.
