Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 基于d8的ES6类跟踪优化_Javascript_Node.js_Performance_V8 - Fatal编程技术网

Javascript 基于d8的ES6类跟踪优化

Javascript 基于d8的ES6类跟踪优化,javascript,node.js,performance,v8,Javascript,Node.js,Performance,V8,我有一个nodejs应用程序,其中有一个模块在内部使用ES6类。我想用d8跟踪这个模块,以发现可能不可优化的代码。这意味着,在这个模块中实现了一个计算过程,我想让它更快,为了实现这一点,我想首先分析代码,因此是d8 我试过了 d8 --trace-opt my-nodejs-file-with-es6-class.js 问题是我没有得到(好的)输出。首先,它通知我require语句,然后如果我注释掉它们,则得到零输出。我还尝试了--trace deopt以及--trace opt verbos

我有一个nodejs应用程序,其中有一个模块在内部使用ES6类。我想用d8跟踪这个模块,以发现可能不可优化的代码。这意味着,在这个模块中实现了一个计算过程,我想让它更快,为了实现这一点,我想首先分析代码,因此是d8

我试过了

d8 --trace-opt my-nodejs-file-with-es6-class.js
问题是我没有得到(好的)输出。首先,它通知我require语句,然后如果我注释掉它们,则得到零输出。我还尝试了
--trace deopt
以及
--trace opt verbose
。我不知道是什么问题

  • 我希望得到这样的输出:xy函数可以优化,或者xy函数由于TryCatchStmt而无法优化,等等
  • 可能是我的文件需要一个入口点?!目前,该文件是我的应用程序的一部分,由于该模块实际上是一个ES6类,其他模块将调用该计算

有什么建议吗?我怎样才能衡量这个模块或那个特定函数的性能?

你不能在d8中运行node.js代码(即d8根本没有
require
和其他东西)。此外,您不需要使用d8来获取优化信息——您只需将非常相同的标志传递给节点,例如,
node——trace opt
应该可以工作。此外,在开始挖掘优化信息之前,您应该先查看应用程序的配置文件。始终首先配置文件以建立热点。如果您不知道此函数是否在热路径上,那么某些函数已优化或未优化这一事实不会告诉您太多信息。感谢您提供有关nodejs cli标志的提示;)