示例#1
0
    return function () use($n) {
        $ary = array();
        for ($i = 0; $i < $n; $i++) {
            $ary[$i] = null;
        }
    };
}, true)->registerFunctional('splfixed', 'SplFixedArray', function ($n) {
    return function () use($n) {
        $ary = new SplFixedArray($n);
        for ($i = 0; $i < $n; $i++) {
            $ary[$i] = null;
        }
    };
}, true);
//$bench->benchmark(10000, 100);
$bench->progression(10000, 400, 2);
$groups[] = $bench->getResults();
$bench = new \Nicmart\Benchmark\VariabeSizeEngine('Array versus SplFixedArray - Access items');
$bench->registerFunctional('array', 'array', function ($n) {
    $ary = array();
    for ($i = 0; $i < $n; $i++) {
        $ary[$i] = $i;
    }
    return function () use($ary) {
        for ($i = 0; $i < count($ary); $i++) {
            $j = $ary[$i];
        }
    };
}, true)->registerFunctional('splfixed', 'SplFixedArray', function ($n) {
    $ary = new SplFixedArray($n);
    return function () use($ary) {
示例#2
0
        for ($i = 1; $i <= $n; $i *= 2) {
        }
    };
}, false, function ($n) {
    return log($n, 2) * 3;
})->registerFunctional('linear', 'Linear', function ($n) {
    return function () use($n) {
        for ($i = 0; $i < $n; $i++) {
        }
    };
}, true)->registerFunctional('square', 'Square', function ($n) {
    return function () use($n) {
        for ($i = 0; $i < $n; $i++) {
            for ($j = 0; $j < $n; $j++) {
            }
        }
    };
}, true, 2)->registerFunctional('cubic', 'Cubic', function ($n) {
    return function () use($n) {
        for ($i = 0; $i < $n; $i++) {
            for ($j = 0; $j < $n; $j++) {
                for ($h = 0; $h < $n; $h++) {
                }
            }
        }
    };
}, true, 3);
$bench->progression(1000, 8, 4);
$groups[] = $bench->getResults();
$template = new \Nicmart\Benchmark\PHPTemplate();
echo $template->render(array('groups' => $groups));