AzerothCore 集成了 google performance tools 库,它允许你在 CPU 和内存方面分析应用程序的代码执行情况。 简而言之:线程友好的堆检查器(heap-checker)、堆分析器(heap-profiler)和 CPU 分析器(cpu-profiler)。
在终端中运行:
sudo apt-get install libgoogle-perftools-devsudo apt-get install google-perftools libgoogle-perftools-dev注意:上述依赖已安装在我们的 docker 文件中。
Ubuntu 26.04 移除了 google-perftools 包,该包提供了本页末尾使用的 google-pprof 命令。请在那里单独安装 pprof 工具(go install github.com/google/pprof@latest),并使用 pprof 而不是 google-pprof。
-DWITH_PERFTOOLS=ON -DNOJEM=ON -DWITH_DYNAMIC_LINKING=0 编译器标志进行编译。你可以在 config.sh 中使用 CUSTOMOPTIONS 来为仪表盘编译器设置它。你还需要将 CTYPE 配置至少设置为 RelWithDebInfo(更快但信息较少)或 Debug(较慢但信息更多)。config.sh 中 GOOGLE PERF TOOLS 部分内的变量。sudo ./acore.sh run-worldserver 运行 worldserver。sudo killall -12 worldserver。此命令将启动监控进程。sudo killall -12 worldserver。此时你将拥有一个 .prof 文件,就绪于下面配置的文件夹中。google-pprof --callgrind <path/of/worldserver/bin> </path/of/prof/file> > worldserver.callgrind。这将生成一个 callgrind 文件,可以用
QCacheGrind、KCacheGrind 或任何其他兼容工具读取。这就是你将看到的(KCacheGrind 的截图):
