2

我想要一种命令行方式来评估低级贡献者以降低 Node.js 应用程序的每瓦性能。即 JIT 生成的本机代码的 L1、L2 和预取缓存未命中,以及 JavaScript 运行时本身的 JIT/GC/interpteter。

JavaScriptCore、v8 和 ChakraCore 都提供用于运行基准测试的命令行 REPL。我可以在基于 Intel、AMD 和 ARMv6 的硬件上运行哪些分析器来以合理的准确度收集这些统计信息?我希望有一种方法可以在至少两个操作系统上执行此操作:Windows、Mac 和/或 Linux。

4

2 回答 2

3

V8 和 Linuxperf工具相互支持,请参阅文档。如果你有一个非常新的系统(IIRC 内核 >= 4.4 和 perf >= 4.10),你可以跳过编译你自己的内核和perf.

于 2017-06-20T20:41:49.060 回答
1

您可以使用Valgrind。引用他们的常见问题解答,“Valgrind 可以处理动态生成的代码,只要生成的代码以后不会被其他生成的代码覆盖”。

它还支持各种平台,包括 X86/Linux、X86/Darwin 等

于 2017-06-21T07:39:17.743 回答