5

Los contadores de rendimiento para Linux son un nuevo subsistema basado en kernel que proporciona un marco para todo el análisis de rendimiento de las cosas. Cubre también las funciones de nivel de hardware (CPU/PMU, Unidad de monitorización de rendimiento) y de software (contadores de software, puntos de seguimiento). Desde 2.6.33, el kernel proporciona la API del kernel 'perf_event_create_kernel_counter' para que los desarrolladores creen un contador de kernel para recopilar información del tiempo de ejecución del sistema. Lo que más me preocupa es el impacto en el rendimiento del sistema general cuando se habilita tracepoint/ftrace. No hay documentos que pueda encontrar sobre ellos. Una vez me dijeron que Ftrace se implementó mediante el parche de código de forma dinámica, ¿ralentizará el sistema de forma espectacular?Performance Overhead of Perf Event Subsystem en Linux Kernel

+0

perf debe tener el menor impacto posible, cuánto depende de lo que haga con él – Spudd86

Respuesta

0

Esas cosas se ponen porque la gente piensa que pueden ser útiles, y sin duda pueden recopilar información interesante. Si ese es el objetivo, bien.

Sin embargo, si el objetivo es software de ajuste para un mayor rendimiento, son de poco valor de diagnóstico.

Pueden proporcionar medidas interesantes, pero no dicen que decir.

This method does tell you what to fix.

+0

Bueno, mi objetivo es ejecutar perfiles a largo plazo en las máquinas de producción, por lo que los gastos generales de rendimiento me preocupan más. –

+1

@Bo: Creo que, para el control a largo plazo de la salud, es posible que no necesite información recopilada a alta frecuencia, que sería más una cuestión de tiempo general. Si tiene algo que está recopilando información con tanta frecuencia que podría afectar el rendimiento, creo que sería mucho más información de la que podría tener sentido. Por lo general, las personas hacen "instrumentación" (y les preocupa la sobrecarga) para tratar de encontrar "cuellos de botella" (para lo cual no es un buen método). –

1

parches dinámico se utiliza como una manera de minimizar la sobrecarga cuando no se activa el rastreo. La sobrecarga de los contadores de hardware basados ​​en PMU debe depender de cuántos eventos diferentes muestree y con qué frecuencia. Es probable que sea lo suficientemente bajo para que pueda encontrar una configuración aceptable, según lo que desee. Intentaría habilitar cualquier colección de información que le interese, configure cuidadosamente la frecuencia y luego compruebe empíricamente si la sobrecarga es aceptable.