[LRUG] REE vs Ruby 1.9.2
Ashley Moran
ashley.moran at patchspace.co.uk
Mon Apr 4 03:19:28 PDT 2011
On 4 Apr 2011, at 10:19, Andrew Stewart wrote:
> http://www.rubyenterpriseedition.com/
>
> I know Ruby 1.9.2 is better than 1.8.7 in many ways, but does it improve memory usage etc to a degree similar to REE?
Hi Andrew
(First post BTW, hi all!)
We had the honour of having YARV developer Koichi Sasada attend ShRUG last year (he was working at Sheffield Hallam Uni for a while) and he gave us a brief demo of the memory improvements. YARV is more efficient at handling large numbers of small objects in some situations.
Compare the memory usage of this on 1.8.7 and 1.9.2:
1> ~ % irb
ruby-1.9.2-p180 :001 > a = []
=> []
ruby-1.9.2-p180 :002 > 10_000_000.times { a << "a" }
=> 10000000
On my MBP, that uses 630.3MB in 1.8.7 but only 452.0MB in 1.9.2. I haven't tried it in REE though :)
Interestingly, 1.8.7 wins in this case, with 176.0MB to 184.8MB:
1> ~ % irb
ruby-1.9.2-p180 :001 > a = ["a"] * 10_000_000
This surprised us all, but it turns out that contents of the array in this situation is 10 million references to the same "a" object, whereas above it is clearly not.
HTH!
Cheers
Ash
[1] http://shrug.org/
--
http://www.patchspace.co.uk/
http://www.linkedin.com/in/ashleymoran
More information about the Chat
mailing list