AzerothCore integra la biblioteca de herramientas de rendimiento de Google que le permite analizar la ejecución del código de su aplicación en lo que respecta a la CPU y la memoria. En resumen: thread-friendly heap-checker, heap-profiler, y cpu-profiler.
Ejecutar en una terminal: sudo apt-get install google-perftools libgoogle-perftools-dev
Nota: las dependencias anteriores ya están instaladas en nuestro archivo docker
-DWITH_PERFTOOLS=ON -DNOJEM=ON -DWITH_DYNAMIC_LINKING=0
. Puede usar CUSTOMOPTIONS en config.sh
para configurarlo para el compilador del tablero. También debe establecer la configuración de CTYPE
en al menos RelWithDebInfo
(más rápido pero con menos información) o Debug
(más lento pero con más información).config.sh
, en la sección GOOGLE PERF TOOLS
según sus necesidadessudo ./acore.sh run-worldserver
sudo killall -12 worldserver
Este comando iniciará el proceso de monitoreo.sudo killall -12 worldserver
nuevamente para detener el proceso cuando lo desee. En este momento tendrás listo el archivo .prof en la carpeta configurada a continuación.google-pprof --callgrind <path/of/worldserver/bin> </path/of/prof/file> > worldserver.callgrind
Esto generará un archivo callgrind que se puede leer con
QCacheGrind, KCacheGrind o cualquier otra herramienta compatible.Esto es lo que verá (captura de pantalla de KCacheGrind):