Thanks for sharing. I appreciate the tips below, pasti berguna sangat
buat pengguna ruby Indonesia di windows
For me, instead of benchmarking ruby itself alone, I'd rather test our
specific platform and applications which are ruby (and java + ruby)
based, because platform is complex, less people in industry only use
ruby for fibonacci only unless that is mathematicical related industry.
elvan.hidayat wrote:
> Setelah coba-coba ruby 1.9 (mri+yarv) yang masih dalam tahap
> pengembangan, ternyata performanya memang jauh lebih cepat dari versi
> 1.8.6/7.
> Saya melakukan benchmark code ruby yang menjalankan fibonacci
> recursive, di platform win32. Hasilnya, bisa sampai 4x lebih cepat;
> perbandingannya kurang-lebih seperti ini:
> ruby 1.8.6 mswin32: 1x (acuan)
> ruby 1.8.7 MinGW: 1x + 20%
> ruby 1.9.1-preview: 4x
> jruby (client): 3x
> jruby (server): 4x
>
> kode yang dipakai seperti ini:
>
> require 'benchmark'
>
> def fib_ruby(n)
> if n < 2
> n
> else
> fib_ruby(n - 2) + fib_ruby(n - 1)
> end
> end
>
> 10.times { puts Benchmark.measure { fib_ruby(25) } }
>
>
> Sayangnya, ruby 1.9-preview gagal menjalankan rails 2.2.2, bisa
> dimaklumi (terutama yang berkaitan dengan
> activesupport/core-ext/string atau multibyte/chars)
>
> Benchmark lain menggunakan Apache Bench (ab.exe) untuk mengukur
> performa applikasi rails.
>
> Yang menarik adalah ruby 1.8.7 mingw yg lebih responsif untuk CLI
> dibandingkan ruby yang dicompile menggunakan nmake. Jruby pada mode
> server performanya memang sangat cepat, tetapi butuh waktu startup yg
> lebih lama. Mungkin, jruby memang lebih cocok untuk production, dan
> sanggup menangani concurrency yang tinggi (high-traffic).
>
> Tips kalo mau menjalankan Mongrel, atau gem lainnya di versi mingw,
> ubah sedikit di script2nya cari baris2 kode seperti ini: RUBY_PLATFORM
> =~ /mswin/ menjadi RUBY_PLATFORM =~ /mswin|mingw/
>
> Ok, mari kita tunggu versi 1.9 stable dirilis (atau mungkin langsung
> ke versi 2.0).
> Oh ya, apa ada yang tahu software buat benchmark (dan monitoring) yang
> bisa dipakai buat mengukur secara lebih akurat mengenai memory usage,
> log hasil benchmark, termasuk grafik/chart dari aplikasi2 yg dijalankan?
AFAIK there's a paid service, forgot its exact name+url.
http://www.linkedin.com/in/ariekeren
http://ariekusumaatmaja.wordpress.com
Software dev is fundamentally a social activity
Improve the conversation,and you improve the software