dzięki znajomemu (hi tmarc) dowiedziałem się o ciekawym tekście. autor porównał w nim wydajność kilku (41) testów w różnych implementacjach języka ruby.
udział wzięły kanony:
- ruby 1.8 (na linuksie i na windows vista
- ruby 1.9
ale także wersje mniej standardowe:
- jruby
- gardens point ruby .net (wersja beta, na windows vista)
- rubinius
- cardinal
porównano wydajność każdej z implementacji w stosunkdu do złotego wzorca – czyli 1.8 na linuksie.
efekt? no cóż. 1.9 zdecydowanie rządzi. ruby 1.8 na linuksie ma drugie miejsce. wersja na windowsach jest trochę wolniejsza, ale (co ważniejsze) wywala się na 2 testach!
pozostałe implementacje: wolno i kiepsko. “hitem" jest cardinal – większość testów zakończona błędem, dwa trwały powyżej 15 minut i zostały ręcznie ubite (te testy były “zrobione" przez 1.8 w czasach 9.5 i 0.5 sekundy!). choć trzeba przyznać, że w 3 testach cardinal osiągnął najlepszy wynik. wydajnościowo gorszy był rubinius, ale on miał mniej errorów (“ledwie" koło połowy).
można spojrzeć by rozwiać złudzenia, lub nauczyć się czegoś z testów.
Tak właściwie to nie Ruby 1.9 rządzi, tylko Yarv rządzi. O 1.9 gdzieś czytałem, że jest (bez Yarv) wolniejsze od 1.8.
Z/bez prezentuje się tak:
http://www.rubychan.de/share/yarv_speedups.html