Archive

perl 5.10.0 VS PHP 5.2.6 (I/O)

Hace algunos años, intenté este benchmark y, para mi sorpresa, perl devastó a PHP. La diferencia era 10x; a favor de perl.

La prueba consistió en pedirle a perl que escribiera, en un archivo, los números del 0 al 999,999.

Los scripts que utilicé fueron los siguientes:

perl:

<code>#!/bin/perl

use warnings;

use strict;</code>

open(my $fh, '>', 'test.pl.txt');

for (my $i = 0; $i < 1000000; $i++) {

syswrite($fh, "$in");

}

close $fh;

PHP:

<code>< ?php</code>

$fp = fopen('test.php.txt', 'w');

for ($n= 0; $n < 1000000; $n++) {

fwrite($fp, "$nn");

}

fclose($fp);

?>

For the record, utilicé a mi querido Fedora 10; totalmente actualizado. Mi hardware es consultable aquí: <a href="http://www.smolts.org/client/show/pub_0b812fdc-5bf2-4fd5-a899-39f2d4539b1d">http://www.smolts.org/client/show/pub_0b812fdc-5bf2-4fd5-a899-39f2d4539b1d</a>

Para medir el desempeño, usé la utilería time.

El comando fue el siguiente; seguido de su output:

<code>[renich@introdesk test]$ echo -e "n== Perl Test ==" && time perl test.pl && echo -e "n== PHP Test ==" && time php test.php</code>

== Perl Test ==

real 0m6.268s

user 0m0.937s

sys 0m5.312s

== PHP Test ==

real 0m9.167s

user 0m3.610s

sys 0m5.538s

Admito que, es muy posible, que el código de PHP pueda ser optimizado; al igual que el código de perl. Si tienes sugerencias, te invito a comentarlas. Yo apoyo 100% a PHP!!

A ver, perleanos! Sugiéranme una manera más rápida de hacer esto!

PHPeros! Ayúdenme a mejorar el tiempo de PHP.