03 junio, 2008

PHP Benchmark

The PHP Benchmark fue construido como una forma de abrir los ojos de la gente al hecho de que no todos los segmentos de código PHP se ejecutan a la misma velocidad. Podrías sorprenderte de los resultados que esta página genera, pero son correctos. Ejemplo:

Cuál es la mejor forma de recorrer un hash array?

Dado un Hash array con 100 elementos, claves de 24 bytes y 10k de datos por cada entrada...

+ 618 %
foreach($aHash as $val);

Total time: 7 µs


+ 171 %
while(list(,$val) = each($aHash));

Total time: 7 µs

+ 765 %
foreach($aHash as $key => $val);

Total time: 31 µs

+ 100 %
while(list($key,$val) = each($aHash));

Total time: 4 µs

+ 1506 %
foreach($aHash as $key=>$val) $tmp[] = $aHash[$key];

Total time: 61 µs


+ 100 %
while(list($key) = each($aHash)) $tmp[] = $aHash[$key];

Total time: 4 µs

+ 2147 %
Get key-/ value-array: foreach($aHash as $key[]=>$val[]);

Total time: 87 µs

+ 1976 %
Get key-/ value-array: array_keys() / array_values()

Total time: 80 µs

+1631535 %
$key = array_keys($aHash);
$size = sizeOf($key);
for ($i=0; $i<$size; $i++) $tmp[] = $aHash[$key[$i]];

Total time: 66128 µs


Publicar un comentario en la entrada

Últimos links en indiza.com