[EMAIL PROTECTED] wrote:
Wow thats fast!
On my machine i get these results:
Win32 (PHP 5.2.1 CLI)
require_once - 1.7735 sec
myrequire_once - 1.0973 sec
I made two benchmarks one with relative paths and one with full paths.
The full paths:
<?
$start_time = microtime(true);
define('BASEPATH', dirname(__FILE__).'/');
function myrequire_once($file)
{
static $loaded = array();
if (!array_key_exists($file, $loaded))
{
$loaded[$file] = 1;
require $file;
}
}
for ($i=0;$i<1000;$i++) {
// require_once(BASEPATH.'manyClasses/'.$i.'.class.php');
myrequire_once(BASEPATH.'manyClasses/'.$i.'.class.php');
}
$execution_time = microtime(true) - $start_time;
echo number_format($execution_time,4)."\n";
?>
Here the benchmarks with relative paths:
Ubuntu 6.10, intel core 2 duo 1.66Ghz (It only uses one core afaik).
PHP 5.2.0 (cli) (built: Mar 16 2007 19:40:08)
require_once 0.1123
myrequire_once 0.2582
Ubuntu 6.10, Pentium 4 3Ghz (Dual core also but probably only using one
core).
PHP 5.1.6 (cli) (built: Mar 7 2007 12:48:25)
require_once 0.0984
myrequire_once 0.2800
Ubuntu 7.04, AMD 64bit 3700+.
PHP 5.2.1 (cli) (built: Feb 20 2007 20:11:58)
require_once 0.0663
myrequire_once 0.1639
Windows 2000, AMD 64bit 3200+.
PHP 5.1.4 (cli) (built: May 4 2006 10:35:22)
require_once 0.1590
myrequire_once 0.5190
With full paths:
Ubuntu 6.10, intel core 2 duo 1.66Ghz (It only uses one core afaik).
PHP 5.2.0 (cli) (built: Mar 16 2007 19:40:08)
require_once 0.1032
myrequire_once 0.3082
Ubuntu 6.10, Pentium 4 3Ghz (Dual core also but probably only using one
core).
PHP 5.1.6 (cli) (built: Mar 7 2007 12:48:25)
require_once 0.0967
myrequire_once 0.2944
Ubuntu 7.04, AMD 64bit 3700+.
PHP 5.2.1 (cli) (built: Feb 20 2007 20:11:58)
require_once 0.0634
myrequire_once 0.1528
Windows 2000, AMD 64bit 3200+.
PHP 5.1.4 (cli) (built: May 4 2006 10:35:22)
require_once 0.2115
myrequire_once 0.6158
now I only have one windows system to test on but from this test it
seems that the full path version is slower on windows then the relative
paths. Which struck me as odd so I actually reran the tests several times.
The myrequire_once function is generally slower across my test cases
then require_once.
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php