当我使用 YJP 在我们自己的产品上做 cpu-tracing profile 时,它真的很慢。
该产品在 8GB 堆的 16 核机器上运行,我使用磨床运行一个小负载测试(例如 10 个磨床线程),在分析期间大约有 7~10 步。我有一个脚本来使用分析器启动产品,开始分析(使用控制器 api),然后启动磨床来模拟用户操作。当所有操作完成后,脚本会告诉分析器停止分析并保存快照。
在分析过程中,对于磨床测试中的每个步骤,完成时间超过 100 万毫秒。整个分析通常需要 10 多个小时,只需 10 个磨床螺纹,每个螺纹运行 10 次。如果没有分析器,它会在 500 毫秒内完成。
那么......除了要分析的产品的问题之外,还有什么会影响 cpu 跟踪过程本身的性能吗?