首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MRI Ruby和JRuby哪个更快?

MRI Ruby和JRuby哪个更快?
EN

Stack Overflow用户
提问于 2011-02-04 15:49:08
回答 6查看 26.2K关注 0票数 26

如果我使用Ruby on Rails,我应该安装MRI/YARV Ruby还是JRuby?哪个更快?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-02-04 15:57:21

答案取决于许多变量。

但总的来说,Ruby1.9比JRuby快,但Ruby1.8比JRuby慢。

例如,根据Computer Language Benchmarks Game

  • Ruby 1.9 vs JRuby
  • Ruby 1.8 vs JRuby

此外,如果您的应用程序是多线程的,则JRuby may have some advantages over standard Ruby

(也称为MRI)],这取决于您有多少个内核。

票数 23
EN

Stack Overflow用户

发布于 2012-11-19 13:19:14

最近的基准测试显示JRuby处于领先地位,紧随其后的是MagLev,Rubinius,然后是核磁共振。

基准测试是很棘手的。Ruby Benchmark Suite是大多数人用来测试Ruby的。如果您删除了在任何实现中失败的任何基准测试,您将获得以下图表。

请注意,我使用了几何平均值。这是一个更好的平均性能指标,因为它归一化了异常值和机器规格。

您可以运行的最佳基准测试将特定于您的应用程序。如果你在寻找整体性能,你可能想要使用真正的线程,所以Rubinius或JRuby是你唯一真正的选择。

而且,每个实现在不同的事情上都很快。MRI在启动时速度非常快,所以它对脚本很好。对于运行时间较长的应用程序(如web应用程序),Rubinius或JRuby通常会比MRI运行得更好。

票数 26
EN

Stack Overflow用户

发布于 2011-02-05 15:05:01

老实说,这取决于你的代码。在您的机器上安装RVM或Pik,安装一系列不同版本的ruby,并尝试在其中运行代码。

例如:一个频繁重启的应用程序不是一个很好的JRuby候选者,因为JRuby在Hotspot能够有效地优化你的代码之前有一段时间。同样,依赖线程的应用程序也不是Ruby 1.8.7的最佳候选者,因为Ruby 1.8.X不能在处理器上使用一个以上的内核,因此不能同时在一个以上的线程上执行。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4895684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档