11

我想在有和没有 JIT 的情况下在 v8 上运行一些测试来比较性能。我知道 JIT 会提高我的平均速度性能,但如果我想在移动平台上工作,我会得到一些更详细的实际测试结果。

我还没有找到如何像 Squirrelfish 上那样启用或禁用 JIT(参见 JavaScriptCore/wtf/Platform.h 中的 ENABLE_JIT)。

有人知道如何用 v8 做到这一点吗?

谢谢。

亚历山大

4

2 回答 2

13

对于那些可能感兴趣的人,我从 Søren Gjesse 在 v8-users google groups 上得到了以下答案。


您好,在 V8 中无法禁用动态生成的代码。与其他 JavaScript 引擎不同,V8 没有解释器模式——它总是生成原生代码。

一个例外是具有解释器和本机代码版本的 RegExp 引擎。编译时定义 V8_NATIVE_REGEXP 可以为 RegExp 处理生成本机代码。

问候, 索伦


于 2009-08-18T21:40:15.213 回答
2

在 32 位 little endian 平台上,您可以使用 ARM 模拟器进行构建。这是一个测试功能,性能会很糟糕,但它确实有效并且不涉及直接执行 JITed 代码。在 scons 或 test.py 命令行上使用 --simulator=arm 选项。

于 2010-03-09T11:27:15.420 回答