Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. C/C++
  3. Celero

Celero

NOASSERTIONC++v2.10.0

A C++14 library for authoring and executing benchmarks with a GoogleTest-like API, supporting statistical analysis and performance tracking.

GitHubGitHub
863 stars96 forks0 contributors

What is Celero?

Celero is a C++ benchmarking library and framework that enables developers to write, execute, and analyze performance tests for their code. It solves the problem of inconsistent and hard-to-reproduce benchmark results by providing a structured, GoogleTest-like API that integrates seamlessly into C++ projects. The library focuses on statistical accuracy, automating measurements, and tracking performance over time.

Target Audience

C++ developers and teams who need to measure and optimize code performance, particularly those working on performance-critical applications or libraries where benchmarking is essential for validating algorithm choices and design decisions.

Value Proposition

Developers choose Celero because it offers a comprehensive, easy-to-integrate solution for C++ benchmarking with features like automated RAM tracking, statistical reporting, and CI/CD support. Its GoogleTest-like API lowers the learning curve, while its focus on accuracy and historical tracking helps teams maintain performance standards over time.

Overview

C++ Benchmark Authoring Library/Framework

Use Cases

Best For

  • Comparing performance of different algorithms or data structures in C++
  • Tracking performance regressions in continuous integration pipelines
  • Measuring memory usage alongside execution time in benchmarks
  • Scaling benchmark complexity with problem space values for algorithm analysis
  • Writing multi-threaded performance tests for concurrent code
  • Generating performance graphs and CSV outputs for reporting

Not Ideal For

  • Projects stuck on C++ standards older than C++14
  • Teams needing quick, one-off timing measurements without statistical rigor or framework setup
  • Environments where minimizing dependencies is crucial, as it requires GoogleTest for unit test builds

Pros & Cons

Pros

Statistical Rigor

Celero emphasizes statistical soundness by automatically computing optimal samples and iterations, and capturing rich timing statistics to ensure accurate, reproducible benchmark results.

Comprehensive Metrics

It includes automated RAM tracking, user-defined measurements, and problem space scaling, allowing for multi-faceted performance analysis beyond just execution time.

Easy Integration

With a GoogleTest-like API and a single header file, Celero integrates seamlessly into C++ projects, lowering the learning curve for developers familiar with testing frameworks.

CI/CD Ready

Outputs results in JUnit XML format for continuous integration, enabling automated performance regression tracking in pipelines, as highlighted in the README.

Cons

GoogleTest Dependency

Celero requires developers to provide GoogleTest to build its unit tests, adding an external dependency that complicates setup and maintenance.

Advanced Feature Overhead

Features like user-defined measurements and problem spaces require additional boilerplate code and deeper understanding, which can be overwhelming for simple benchmarking needs.

C++14 Minimum Barrier

It only supports C++14 and above, excluding legacy projects or those constrained by older compiler standards, limiting its adoption in some environments.

Frequently Asked Questions

Quick Stats

Stars863
Forks96
Contributors0
Open Issues4
Last commit9 days ago
CreatedSince 2013

Tags

#statistical-analysis#cplusplus-14#c-plus-plus#ci-cd#performance-measurement#microbenchmarks#cplusplus#measurements#cross-platform#benchmarking#memory-tracking#testing-framework#benchmark

Built With

G
GoogleTest
C
CMake
C
C++14

Included in

C/C++70.6k
Auto-fetched 1 day ago

Related Projects

Google MockGoogle Mock

GoogleTest - Google Testing and Mocking Framework

Stars38,943
Forks10,849
Last commit2 days ago
googletestgoogletest

GoogleTest - Google Testing and Mocking Framework

Stars38,943
Forks10,849
Last commit2 days ago
Catch2Catch2

A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch)

Stars21,428
Forks3,499
Last commit1 day ago
benchmarkbenchmark

A microbenchmark support library

Stars10,356
Forks1,792
Last commit4 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub