rel*_*one 7 javascript profiler node.js typescript
我目前正在做Advent Of Code(顺便说一句,绝对推荐但偏离主题。但是在第 3 天,我对我的算法的性能非常不满意。
所以我开始使用内置的节点分析器来测试我浪费时间的地方。如果您想重现我的步骤advent-of-code-2019-typescript ,这里是 repo 的链接。另外如果你跑
npm install
npm run build
Run Code Online (Sandbox Code Playgroud)
在运行分析器之前
我按照node.js的指南来分析我的代码。所以首先我用分析器运行了我的第 3 天代码
node --prof ./dist/src/03.01/index.js
node --prof-process isolate-xxxxxx-v8.log > processed.txt
Run Code Online (Sandbox Code Playgroud)
现在输出并没有真正帮助
已处理.txt [摘要部分]
[Summary]:
ticks total nonlib name
12 0.0% 70.6% JavaScript
0 0.0% 0.0% C++
344 0.6% 2023.5% GC
56103 100.0% Shared libraries
5 0.0% Unaccounted
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,所有刻度都显示在共享库下。我猜这是因为 index.js 导入了它需要的所有函数并执行它们。实际上,一切都应该在 JavaScript 下出现,但只有 12 个滴答声。
如果我是正确的,这就是我的问题的原因
我如何解决共享库部分以实际显示被调用的所有函数及其刻度?
如果我的上述问题得到解答,我会很高兴,但这会进一步帮助我。我使用 TypeScript,因此 Profiler 在转译的代码上运行。结果,我的函数显示为,我必须检查转译后的代码,其中 line 指的是哪个函数。可能但不漂亮。
有没有办法将它映射到打字稿文件?