From: Miles Smith on
So what your saying is that the VM is part of Ruby? I think your analogy would be better stated that a speed comparison between a Nissan Cube and a Nissan GT-R is invalid because they were driven on different tracks for the time trials.

In that case, IT would be valid.

-------


The claim is that 1.9.1, in its entirety, is generally faster than 1.8.6, in its entirety. The data backs that up. (I'm looking at the "A faster Ruby on Windows is possible (benchmarks for 4 implementations inside)" benchmark.) The fact that a new VM (YARV) is part of what makes 1.9.1 different from 1.8.6 is irrelevant. If you trying to assert that the different VM is the _only_ reason for the performance, then yes, that would be a bad claim, because there are too many other variables and changes involved. But they didn't; the comparison was between 1.9.1 and 1.8.6.

Your statement is a little akin to saying a speed comparison between a Nissan Cube and a Nissan GT-R is invalid because they have different engines. Well, of course they have different engines; that's part of what makes them different vehicles.


From: Roger Pack on
> Then show your results! As I wrote before: I would love to see them!

http://blog.pluron.com/2009/05/ruby-19-performance.html

Their rails runs 2x faster with 1.9

-r

--
Posted via http://www.ruby-forum.com/.

From: Coey_Minear on
> -----Original Message-----
> From: Miles Smith [mailto:miles(a)appcon.net]
> Sent: Tuesday, February 23, 2010 12:07 PM
> To: ruby-talk ML
> Subject: Re: Performance of Ruby 1.9 vs. Ruby 1.8
>
> So what your saying is that the VM is part of Ruby? I think your
> analogy would be better stated that a speed comparison between a
> Nissan Cube and a Nissan GT-R is invalid because they were driven
> on different tracks for the time trials.
>
> In that case, IT would be valid.
>
> -------
>

Just to be clear, when I talked about VMs, I was referring to the part of Ruby's architecture that is considered the virtual machine. I was not talking about the virtual machine that would be running XP or Linux within which a Ruby (or any other application) would be run.

In my analogy, Ruby 1.8 and 1.9 are 2 different CARs. The VM within Ruby (whether the original 1.8 one or YARV in 1.9) is the engine. The different benchmark scripts are the different tracks the cars run on. And the virtual machine (with Windows or Linux) would be Earth in some universe or alternate reality.

Yes, trying to compare Car 1 running on Earth 1 with Car 2 running on Earth 2 would be a bit invalid, without also reporting Car 1 on Earth 2 and Car 2 on Earth 1.

Coey


>
> The claim is that 1.9.1, in its entirety, is generally faster than
> 1.8.6, in its entirety. The data backs that up. (I'm looking at
> the "A faster Ruby on Windows is possible (benchmarks for 4
> implementations inside)" benchmark.) The fact that a new VM (YARV)
> is part of what makes 1.9.1 different from 1.8.6 is irrelevant. If
> you trying to assert that the different VM is the _only_ reason for
> the performance, then yes, that would be a bad claim, because there
> are too many other variables and changes involved. But they
> didn't; the comparison was between 1.9.1 and 1.8.6.
>
> Your statement is a little akin to saying a speed comparison
> between a Nissan Cube and a Nissan GT-R is invalid because they
> have different engines. Well, of course they have different
> engines; that's part of what makes them different vehicles.
>

From: Walton Hoops on
On 2/23/2010 11:07 AM, Miles Smith wrote:
> So what your saying is that the VM is part of Ruby? I think your analogy would be better stated that a speed comparison between a Nissan Cube and a Nissan GT-R is invalid because they were driven on different tracks for the time trials.
>
> In that case, IT would be valid.
>
Yes, the YARV VM _is_ an intrinsic part of Ruby 1.9, just as the JVM
_is_ an intrinsic part of Java.

Thus the original analogy stands, and it makes perfect sense to compare
MRI Ruby 1.8 results with
Ruby 1.9 results using YARV because one of the key improvements in 1.9
is the usage of YARV.