Repolode
google

google/benchmark

Una biblioteca de C++ para crear microbenchmarks que miden pequeños fragmentos de código, con una estructura similar a la de las pruebas unitarias.

Estrellas
10,500
Forks
1,828
Issues abiertos
174
Último commit
hace 23 horas

¿Qué es?

Google Benchmark es una biblioteca de C++ para medir el rendimiento de pequeños fragmentos de código. Se escribe una función que ejecuta el código que se quiere probar dentro de un bucle, se registra con la macro BENCHMARK y la biblioteca se encarga de medir el tiempo, determinar el número de iteraciones e informar los resultados. La estructura de su API se parece a la de Google Test, por lo que encaja de forma natural junto a las pruebas unitarias existentes.

La biblioteca se compila con CMake y también se puede usar con Bazel o instalar como paquete del sistema e importar mediante find_package. Para compilarla se necesita una cadena de herramientas de C++17, aunque la API de la biblioteca se puede usar desde código C++11. El proyecto también ofrece bindings para Python y herramientas adicionales para trabajar con resultados de benchmarks.

Está dirigida a desarrolladores de C++ que necesitan comparar implementaciones o hacer un seguimiento del rendimiento de una función específica, en lugar de medir aplicaciones completas.

Funciones clave

  • 01Registra funciones de benchmark con una macro BENCHMARK sencilla y una API basada en bucles.
  • 02Se compila con CMake y se integra con Bazel y find_package.
  • 03Admite opciones de compilación para sanitizers y optimización en tiempo de enlace.
  • 04Ofrece bindings para Python y documentación sobre herramientas adicionales.
  • 05Incluye documentación sobre pruebas de ensamblador para revisar el código generado.

Casos de uso

  • Comparar dos implementaciones en C++ de una misma función para determinar cuál es más rápida.
  • Añadir comprobaciones de regresiones de rendimiento para rutas de código críticas junto a las pruebas unitarias.
  • Medir el costo de algoritmos individuales o de operaciones con estructuras de datos.

Inicio rápido

  1. 1

    Clona el repositorio de la biblioteca

    git clone https://github.com/google/benchmark.git
  2. 2

    Ve al directorio raíz de la biblioteca

    cd benchmark
  3. 3

    Genera los archivos del sistema de compilación con CMake y descarga las dependencias

    cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release -S . -B "build"
  4. 4

    Compila la biblioteca

    cmake --build "build" --config Release

Antes de usarlo

  • Para compilar la biblioteca se necesita un compilador y una biblioteca estándar compatibles con C++17.
  • La rama experimental v2 no ofrece garantías de estabilidad y la API puede cambiar en cualquier momento.

En colecciones

Temas

Preguntas frecuentes

¿Qué es benchmark?
Una biblioteca de C++ para crear microbenchmarks que miden pequeños fragmentos de código, con una estructura similar a la de las pruebas unitarias. Google Benchmark es una biblioteca de C++ para medir el rendimiento de pequeños fragmentos de código. Se escribe una función que ejecuta el código que se quiere probar dentro de un bucle, se registra con la macro BENCHMARK y la biblioteca se encarga de medir el tiempo, determinar el número de iteraciones e informar los resultados. La estructura de su API se parece a la de Google Test, por lo que encaja de forma natural junto a las pruebas unitarias existentes.
¿benchmark es gratuito? ¿Qué licencia tiene?
benchmark es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿benchmark sigue mantenido?
Mantenimiento activo. El último commit de benchmark fue el 5 nov 2026.
¿Para qué puedo usar benchmark?
Comparar dos implementaciones en C++ de una misma función para determinar cuál es más rápida. Añadir comprobaciones de regresiones de rendimiento para rutas de código críticas junto a las pruebas unitarias. Medir el costo de algoritmos individuales o de operaciones con estructuras de datos.
¿Cómo se instala benchmark?
Clona el repositorio de la biblioteca: git clone https://github.com/google/benchmark.git Ve al directorio raíz de la biblioteca: cd benchmark Genera los archivos del sistema de compilación con CMake y descarga las dependencias: cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release -S . -B "build" Compila la biblioteca: cmake --build "build" --config Release
¿Dónde consigo benchmark?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/google/benchmark

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados

Biblioteca open source de Facebook con componentes esenciales en C++20, complementaria a Boost y std, utilizada ampliamente dentro de Meta.

Backend y APIs#cpp#c-plus-plus-20#cpp-library
30,6 mil+4 esta semana5,9 milC++Apache-2.0Actualizado hace 14 horas