Prove di “Hello World!”

Ho scritto un po di “Hello World!” in vari linguaggi, e usato time per verificarne i tempi di esecuzione.
La macchina era completamente scarica, e i processi venivano lanciati 3 volte consecutivamente da uno script bash (posto che li lanciavo da shell…)

Linguaggio Prima prova Seconda prova Terza prova
C 0m0.001s 0m0.001s 0m0.001s
Awk 0m0.002s 0m0.001s 0m0.001s
PHP 0m0.028s 0m0.033s 0m0.041s
Perl 0m0.005s 0m0.004s 0m0.004s
Python 0m0.020s 0m0.026s 0m0.030s
Ruby 0m0.009s 0m0.009s 0m0.007s
Bash 0m0.007s 0m0.007s 0m0.008s

Naturalmente i valori sono puramente indicativi, e per cercare di migliorare un po l’output, ho pensato di fare un ciclo for da 100 “Hello World!” per vedere come cambiano i tempi di esecuzione.

Linguaggio Prima prova Seconda prova Terza prova
C 0m0.001s 0m0.001s 0m0.001s
Awk 0m0.002s 0m0.001s 0m0.001s
PHP 0m0.028s 0m0.028s 0m0.029s
Perl 0m0.006s 0m0.003s 0m0.004s
Python 0m0.020s 0m0.018s 0m0.019s
Ruby 0m0.007s 0m0.008s 0m0.006s
Bash 0m0.009s 0m0.010s 0m0.009s

Ovviamente 100 iterazioni sono una bazzecola per un computer, e quindi passiamole a 10.000.

Linguaggio Prima prova Seconda prova Terza prova
C 0m0.002s 0m0.002s 0m0.001s
Awk 0m0.006s 0m0.008s 0m0.006s
PHP 0m0.035s 0m0.033s 0m0.034s
Perl 0m0.006s 0m0.006s 0m0.006s
Python 0m0.032s 0m0.032s 0m0.032s
Ruby 0m0.035s 0m0.033s 0m0.033s
Bash 0m0.155s 0m0.162s 0m0.158s

Dovrei inventarmi qualcosa di computazionalmente piu pesante, tipo l’ordinamento di una matrice di dati, ma in questo momento comincio ad avere sonno, e non ne ho voglia. Per oggi basta cosi 🙂

Una prova un po piu esaustiva, la si può ad ogni modo reperire su http://scutigena.sourceforge.net/ e su http://shootout.alioth.debian.org/

Pubblicità

Rispondi

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.