Programlama Dilleri Benchmark Karşılaştırmaları

0
anonim

Görüşler

0
roktas
Bu konular çok netamelidir. Bildiğim en sağlıklı yorumlara sahip, alanında artık klâsikleşmiş bir paper'ı da (haberdar olmayanlar için) ben vereyim, büyük üstad Brian Kernighan'dan:
Timing Trials, or, the Trials of Timing: Experiments with Scripting and User-Interface Languages

Bu cs.bell-labs klâsiğinde sonuç olarak bakın ne söyleniyor:

Comparisons are a mainstay of computer literature. Conferences, journals, and magazines are full of tables and colorful charts that compare execution time or memory usage of one or more programs on different machines or implementations. In light of the variability in results that we saw, however, we wonder whether similar variation lurks behind published benchmark studies as well. It does seem wise to take all such experiments ­including these ­with a large grain of salt.

Rakamlara inanmayın, ama rakamsız da kalmayın. ;-)

0
librid
Ruby'nin Python'dan hızlı olduğunu iddia eden yoktu fakat Ruby 2.0'ın Python'a nal toplatacağını iddia edenler var :-)
YARV isimli yeni Ruby VM, Ruby cvs'e eklenince o benchmarklara bir daha bakarız. Sonuç sizi üzebilir, yol yakınken Ruby öğrenmeye başlamanızı samimiyetle tavsiye ederim ;-)
0
anonim
Yabancı ruby fanlarının sitelerinde ruby daha hızlı diyenler var. Ama ben zaten farklı programa dillerini öğrenmeyi hoby haline getirmiş bir kişi olarak ruby öğrenmeye karşı değilim. Zaten python programcıları ruby öğrenirken zorlukda çekmez; aralarındaki benzerlikler oldukça fazla özellikle de söz dizimi. Bakalım ruby 2.0'da durum ne olacak. Dediğiniz gibi olursa ben değil Python'un yaratıcısı Guido bey düşünsün.
0
librid
YARV 0.3.2'yi indirip, kullandığım dağıtımla gelen paketlerin ayarları ile aynı olması amacıyla -march=i386, -mtune=i686 ile derledim ve beraberinde gelen (haberde linki verilen shootout.alioth.debian.org'dan alınmış) bazı benchmarkları denedim (YARV kendi deposunda Ruby 1.9 ile birleştirilmiş durumda). Sonuçlar şöyle (Küçük sonuçlar daha iyi):

ackermann:
----------------
Perl: 53.394 saniye
mzscheme: 19.598 saniye
Python: 52.854 saniye
YARV: 12.080 saniye

fibonacci:
-------------
Perl: 42.512 s
mzscheme: 7.602 s
Python: 15.595 s
YARV: 10.174 s

tak:
----
Perl: 93.649 s
mzscheme: 11.965 s
Python: 22.505 s
YARV: 12.297 s
0
librid
Not: Testlerden önce sistem runlevel 1'e düşürülerek arkaplandaki tüm prosesler sonlandırıldı bu yüzden rakamlarda yanılma payı düşük.
0
FZ
Perl 6 çıksın bir hele, sonra yine bençmark yapalım ;-)
0
librid
Keşke Perl 6 yakında çıkacak olsaydı... Bazı ciddi Perl'cüler Perl 6 çıkana kadar Ruby kullanmaya başladılar bile ;-)
0
roktas
tak: ---- Perl: 93.649 s mzscheme: 11.965 s Python: 22.505 s YARV: 12.297 s
Bu kısım ilgimi çekti. Perl:Python arasında 93s:22s ~ 1:4'lük bir hız farkı gösteriyor. Olabilir tabii, çok da anormal bir fark değil (10 kat olsa o zaman gerçek bir sorun var diyebilirdim). Günlük işler Takeuchi (tak) problemiyle dolu değil gerçi ama; AMD Athlon 32, i386 mimarisinde, benim yaptığım basit test bu kadar büyük bir fark vermedi: 'time perl5.8.7 tac.pl':'time python2.4 tac.py' ~ 18s:10s, yani 1:1.8'lik bir fark gözledim. Not olarak geçeyim.
0
librid
Evet ordaki orantısız farklılık benim de dikkatimi çekti ama Python YARV karşılaştırmasına yoğunlaştığım için fazla önemsememiştim :-) Tekrar baktım, burdaki sorun makinanın 256MB hafızasının Perl programı (tak.pl) için yeterli gelmemesiymiş. Makine swap kullanmaya başlayınca haliyle böyle abartılı bir farklılık meydana geliyor. Makinenizin hafızası sanıyorum 256'dan fazla ki doğru ölçüm yapabilmişsiniz. Perl'in ismini de böylece temize çıkarmış olalım :-)
0
roktas
Hmm, emin misiniz buna? Sizin makinedeki özel durumu bilemem, ama oradan yola çıkarak bu test hatasının nedeni hakkında, her 256 MB'lik (ve daha küçük bellekli) makine için böyle bir genelleme yapmak hiç doğru olmaz. 256 MB bu uygulama için _çok_ büyük bir rakam. Perl'ün, bu kadar bellek bir yana, çok daha küçük belleklerde paşa paşa çalıştığını bilirim. Debian GNU/Linux dağıtımında her sisteme kurulan temel bir bileşenden bahsediyoruz. ;-)
0
roktas
Tamam, şimdi gözledim. Test boyunca boş bellek hızla azalıyor (Python ve Ruby'de olmayan bir durum). Bu bana bir hata gibi geliyor ama, perl5-porters'a soracağım.
0
librid
Hay Allah, tam ben yanıt yazarken siz de düzeltme yapmışsınız :-) Bence sormak için boşuna vakit kaybetmeyin sorun büyük ihtimalle Perl'den değil tak.pl'nin yazılış tarzından kaynaklanıyor.
0
librid
Evet eminim. Durumun benim makineme özel olmadığını iddia etmiyorum çünkü benimkinde olduğu gibi iki tane bash shell çalıştırmayan veya dietlibc vb. kullanılan başka bir 256MB'lık makinede belki de swap'e ihtiyaç duymadan program sonlanabilirdi fakat benim makinem bir süre sonra swap kullanmaya başlıyor. Genelleme yapmak bu yüzden doğru olmayabilir haklısınız. Zaten amaç ordaki uyduruk bir tak.pl'nin kaç en az MB'lık bir makinede çalıştığını bulmak değil neden o rakam böyle büyük çıkmış onu anlamaya çalışmak. İnanmıyorsanız hafıza kullanımnı grafik olarak gösteren appletlerden birini açın ve YARV paketinden çıkan tak.pl yi çalıştırın. Siz zaten Paul Graham'ın o yazısında Ruby'den bahsettiğine de inanmamıştınız değil mi? :-) Lütfen gördüğünüz şeyi buraya da yazın ki insanlar bir kaç satır kodla bilgisayarın hafızasını doldurabilmenin kullanılan dil ortamının düşük hafızalı makinelerde çalışabilmesi durumunda mümkün olmadığı gibi saçma bir fikre kapılmasınlar.
0
roktas
Pes valla, korkmaya başladım. Bir harfi yanlış yazsak hesabını soracaksınız gelecekte. :-) Çoktan unuttuğum bir Graham konusunu çıkartmışsınız ortaya. Amacım size özel bir kusur keşfetmek değil, hiç kimse için yapmam bunu. Altı üstü sohbet ediyoruz burada. Ne bu benchmark'ları ne de burada dönüp duran "tartışmaları" _bu denli_ ciddiye almayın. Basit bir öneri sadece, çok kişisel algılamayın.
0
yilmaz
Hız artık o kadar önemli mi?
Şimdi nereye dönüp baksak (MS sayesinde) her yer xeon 2,8 server olmuş. Desktoplar 1,0 ghz altında yok nerdeyse ram desen en ufak 256 var.
Programlama dilinin yada vm nin hızlı olup olmaması o kadar önemli mi?
0
ttk
Merhaba

Ms sayesinde artık demode olan ama hızı "hız da hız" diye tepinmeyen kullanıcılar için yeterli olan işlemci ve anakartları ucuza almak mümkün oluyor. 128 Mb Ram + PII 350mhz 15 GB diskli bir makinada çok rahat mesela window 2000 prof. veya yeterli sayılabilecek hızda Knoppix (Debian'ın yavrusu - diske yükleyerek denemiştim, 2.4 veya 2.6 çekirdekli bir sürümü idi) çalışabiliyor. Sistemin kaportasına da "MS sağolsun" çıkartması yapıştırsak tamam olacak :)
0
anonim
Aslında hız meselesi uygulamaya göre değişir. Sistem yazılımları programlarken hafıza yönetimi ve cpu kullanımı çok önemlidir. Örnek olarak Linux'da KDE ve GNOME arasındaki hız farkı iyi sistemlerde bilr fark ediliyor. Ancak bir muhasaba yada otomasyon uygulaması için hız farkı yeni sistemlerde fark edilmeyecektir. Bu yüzden bu tarz uygulamalar için hafıza yönetimi tür tanımlamaları gibi işlerle programcıyı yormayacak bir dil kullanmak daha akıllıca olacaktır.
0
roktas
Hız artık o kadar önemli mi? Şimdi nereye dönüp baksak (MS sayesinde) her yer xeon 2,8 server olmuş. Desktoplar 1,0 ghz altında yok nerdeyse ram desen en ufak 256 var.

... ve o canavarlar makinelerde OpenOffice'i başlatırken çay almaya gidiyorum hâlâ ;-)

0
tongucyumruk
"Hızlı ve gelişmiş bilgisayarlar tembel programcılar üretir."
Robert Hummel

ileriseviye.org sağolsun...
0
Zebani
Yav çok güldüm valla. ;-) Ne de olsa zaman da, hız da göreceli. Bakınız Albert Einstein. :)
0
Anduril
Hadi oradan da optik bilgisayarlara girelim :)
Görüş belirtmek için giriş yapın...

İlgili Yazılar

PAS (Printer Accounting Server)

episode

Mükemmel bir program yapılmış. Adı PAS yazıcıya gönderilen dökümanların yönetiminde çığır açan bir yazılım. Üretici firma yanlış hatırlamıyorsam bir fransız şirketi. Peki nedir bu PAS? Bir manyetik kartımız var fotokopi makinesinin başına gidiyoruz. Makinanın ekranında "Please insert a card" yazıyor, kartımızı kart okuyucudan geçiriyoruz ve fotokopi çekmemiz için makineyi açıyor. Kaç sayfa fotokopi çekersek hesabımıza işliyor. Tabi bunun için ilk önce kartımızı doldurmamız gerekiyor. Ne kadar para yüklemişsek o kadar çekiyor. Print içinde aynı şey geçerli. Bu programın çalışması için bir linux veya NT server'a ihtiyaç var. Program sayesinde Fotokopi ve Yazıcılarınızın analizlerini otomatik olarak alabiliyorsunuz. Fiyatına bakamadım web sitesi www.metrics.com

Eclipse İçin Türkçe İmla Denetimi Eklentisi: Musahhih

FZ

Yusuf Karagöl, Zemberek tabanlı ve Eclipse içinde javadoc, yorum ve karakter katarlarında Türkçe imla denetimi yapan Musahhih isimli bir eklenti geliştirmiş.

Kaynak: http://zembereknlp.blogspot.com/

İşletim Sistemleri Videoları

DemensMagnet

Birçok dağıtımın ve arada Vista'nın da videolarının bulunduğu http://osvids.com herkesin yer imlerinde bulunması gereken bir site. Bu yazı yazılırken SUSE Linux Enterprise Desktop 10 video arşivine eklenmişti.

Palm için miniGL sürücüsü

redogre

http://www.dsbox.com/minigl.html adresinde Palm için OpenGL projesi ile ilgili bilgiler var. Digital Sandbox firmasının Source Forge sitesinin de desteğiyle yürüttüğü projede şu anda 0.4 versiyonuna gelinmiş durumda. Ama Sandbox kullanıcıları uyarıyor, program henüz çok stabil değil. Dsbox sitesinde çok "şirin" screen shot lar var... En azından Palm ekranında vektör grafikler şirin gözüküyor bence.

Böyle bir sunum izlemediniz: gapminder ve dünyanın gidişatı

FZ

Bir sunum bu kadar mı çarpıcı olur, bunca bilgi bu kadar mı net, güzel ve etkili şekilde iki boyutlu ekrana sığdırılır. Görsellik ve animasyon bu kadar mı güzel kullanılır. İstatistik ve geleceğe yönelik bakış açısı bu kadar mı eğlenceli ortaya konur!