如何评估 Dart 性能?
Google 正在推出一种新语言,承诺它具有更好的性能,但是如何评估 Dart 源代码的性能呢?
我们以“向日葵”drawFrame方法:
// Draw the complete figure for the current number of seeds.
void drawFrame() {
ctx.clearRect(0, 0, MAX_D, MAX_D);
for (var i=0; i<seeds; i++) {
var theta = i * PI2 / PHI;
var r = Math.sqrt(i) * SCALE_FACTOR;
var x = xc + r * Math.cos(theta);
var y = yc - r * Math.sin(theta);
drawSeed(x,y);
}
}
如果我们有很多种子
,我们可以在for
中添加一条语句来评估经过的时间吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Google 承诺,当浏览器中有原生 dart 时,稍后会提供更好的性能。
目前,Dart 直接编译为 JavaScript,并且比编写纯 JavaScript 更大、更慢。
你所拥有的函数实际上在纯 javascript 中是相同的,因此编译后的 dart 和直接 javascript 版本之间的运行时应该非常接近相同。
如果您确实愿意,可以在 jsperf.com 上比较编译为 JS 的 Dart 与 JS。
Google promises better performance later on when there is native dart in the browser.
For now Dart compiles directly to JavaScript and is larger and slower than writing pure JavaScript.
The function you have right there is actually identical in pure javascript so the runtime ought to be very nearly the same between compiled dart and a direct javascript version.
You could compare the compiled-to-JS Dart versus JS at jsperf.com if you really wanted to.
GOTO Keynote 幻灯片中提供了性能数据。目前看来,Dart 比 V8 慢大约 2 倍。但根据 Dart 团队的说法,随着时间的推移,这应该会得到改善。
There are performance numbers in the GOTO Keynote slides. It appears that Dart is about 2 times slower than V8 at the moment. But this should improve over time according to the Dart team.
回复晚了,但就在昨天,他们宣布了性能/基准测试页面,它允许您跟踪一段时间内的性能v8,dart -> js 和 dart 虚拟机。
有一篇对 Dart VM 进行基准测试文章,告诉您如何正确对 Dart VM 进行基准测试。
Late reply, but just yesterday they announced the performance/benchmarking page which allows you to track performance over time of v8, dart -> js, and the dart vm.
There is a Benchmarking the Dart VM article that tells you how to correctly benchmark the Dart VM.