首页 > 解决方案 > 如何防止节点基准包优化(或允许优化)其基准测试的功能?

问题描述

当我对一个函数进行的一些更改导致它每秒运行超过 10 亿次时,我感到非常兴奋(在更改之前它每秒运行大约 500 万次......增加了 200 倍!)。

细微的变化是返回一个在 return 语句中初始化的对象,而不是创建对象,更改其中一个值,然后返回该对象......并不是真正值得 200 倍优化的重构。

我对自己非常满意,直到我尝试对一个完全空的函数进行基准测试,然后瞧……它运行的次数与我尝试测试的昂贵函数的运行次数相同……大约每秒 13 亿次。

我究竟做错了什么?

Javascript 显然在幕后优化了一些东西,但我不知道是什么。

当我添加一些代码来随机化函数的返回值时,它会破坏基准......因为它在函数中运行了通常不存在的额外代码。

标签: javascriptnode.jsbenchmarking

解决方案


推荐阅读