[FR] Consider adding extra info to the reducing variance doc relating to CPU frequency scaling

Abierto
#1,684 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
42/100
Tipo de issue
Documentación
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
cloud

Línea de trabajo

Comienza con docs/reducing_variance.md y revisa sus indicaciones actuales sobre el escalado de la frecuencia de la CPU. Investiga las limitaciones y posibles soluciones para entornos locales y en la nube descritas en el issue, incluidas las máquinas virtuales en la nube y las instancias bare-metal. Se considerará terminado cuando el documento explique claramente las diferencias y las opciones prácticas para reducir la variabilidad de los benchmarks en cada entorno.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Is your feature request related to a problem? Please describe.

I'm trying to reduce variance in a benchmark, and doing all the things listed in the "reducing variance" doc, here [1].
This works fine on the box on my desk (where I have full control), but when I try and run it in the cloud then variance is back.
Why? AFAICT it's because the one "reducing variance" measure which does not appear to work with most cloud providers is pinning CPU frequency scaling.
And it doesn't seem to make a difference whether it's a regular cloud VM, or a cloud "bare metal" box.
I'm guessing this is because if you allow users to manipulate the CPU frequencies any way they like, then there is a risk of overheating the box?

Describe the solution you'd like

Add a section to the "reducing variance" doc [1], discussing the difficulties and possible solutions of implementing the measures locally versus in the cloud.

Describe alternatives you've considered

Have been Googling around a lot trying to find confirming or deny that "CPU frequency scaling" in some cloud provider somewhere works or doesn't work. Or that maybe local (non-cloud) benchmorks are the only way to go if CPU frequency scaling is needed?

Additional context

n/a

[1] https://github.com/google/benchmark/blob/main/docs/reducing_variance.md

Lenguaje dominante
C++
Estrellas
10.5k
Forks
1.8k
Merge medio
1 d 17 h
PR fusionados (30 d)
30

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de google/benchmark

Todos los issues de google/benchmark

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.