Pregunta

Me gustaría ser capaz de ver cómo "cara" cada hilo en mi aplicación está utilizando Callgrind. Yo perfilan con la opción --separate-thread=yes que le da un archivo Callgrind para toda la aplicación y luego una por-hilo.

Esto es útil para ver el perfil de cualquier tema dado, pero lo que realmente quiero es sólo una lista ordenada de tiempo de CPU de cada hilo para que pueda ver que temas son los más grandes de los cerdos.

¿Fue útil?

Solución

Valgrind / Callgrind no permite este comportamiento. Ni kcachegrind hace, pero creo que va a ser una buena mejora. Tal vez algunas respuestas se podían encontrar en su lista de correo.

Un trabajo pero muy aburrido forma podría ser la opción de uso --separate-thread=no, y actualizar el código para utilizar para cada hilo un diferente nombre de la función o una clase de nombre. Dependiendo de su complejidad del código, podría ser la respuesta (utilizando 1computeData (), 2computeData (), ..)

Otros consejos

Sólo tiene que abrir varios perfiles en kcachegrind al mismo tiempo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top