[limb-svn] r6907 - 3.x/trunk/limb/active_record/tests/bench

svn at limb-project.com svn at limb-project.com
Wed Apr 9 23:55:13 MSD 2008


Author: pachanga
Date: 2008-04-09 23:55:13 +0400 (Wed, 09 Apr 2008)
New Revision: 6907
URL: http://fisheye.limb-project.com/changelog/limb/?cs=6907

Modified:
   3.x/trunk/limb/active_record/tests/bench/fetching.php
Log:
-- adding more tests into bench

Modified: 3.x/trunk/limb/active_record/tests/bench/fetching.php
===================================================================
--- 3.x/trunk/limb/active_record/tests/bench/fetching.php	2008-04-09 19:43:48 UTC (rev 6906)
+++ 3.x/trunk/limb/active_record/tests/bench/fetching.php	2008-04-09 19:55:13 UTC (rev 6907)
@@ -33,6 +33,7 @@
 echo "native sqlite fetching: " . (microtime(true) - $mark) . "\n";
 
 $conn = lmbDBAL :: newConnection('sqlite://localhost/' . $db);
+
 $mark = microtime(true);
 
 for($i=0;$i<1000;$i++)
@@ -44,6 +45,17 @@
 
 echo "lmbDBAL :: fetch(), getter: " . (microtime(true) - $mark) . "\n";
 
+$mark = microtime(true);
+
+$rs = lmbDBAL :: fetch('SELECT bar FROM foo', $conn);
+for($i=0;$i<1000;$i++)
+{
+  foreach($rs as $record)
+   $bar = $record->get('bar');
+}
+
+echo "lmbDBAL :: fetch()(out of loop), getter: " . (microtime(true) - $mark) . "\n";
+
 class Foo extends lmbActiveRecord{}
 
 lmbActiveRecord :: setDefaultDSN('sqlite://localhost/' . $db); 
@@ -61,8 +73,19 @@
 
 $mark = microtime(true);
 
+$rs = lmbActiveRecord :: find('Foo');
 for($i=0;$i<1000;$i++)
 {
+  foreach($rs as $obj)
+    $foo = $obj->get('bar');
+}
+
+echo "lmbActiveRecord fetching(out of loop), getter: " . (microtime(true) - $mark) . "\n";
+
+$mark = microtime(true);
+
+for($i=0;$i<1000;$i++)
+{
   $rs = lmbActiveRecord :: find('Foo');
   foreach($rs as $obj)
     $foo = $obj->bar;
@@ -72,8 +95,19 @@
 
 $mark = microtime(true);
 
+$rs = lmbActiveRecord :: find('Foo');
 for($i=0;$i<1000;$i++)
 {
+  foreach($rs as $obj)
+    $foo = $obj->bar;
+}
+
+echo "lmbActiveRecord fetching(out of loop), attr access: " . (microtime(true) - $mark) . "\n";
+
+$mark = microtime(true);
+
+for($i=0;$i<1000;$i++)
+{
   $rs = Foo :: find();
   foreach($rs as $obj)
     $foo = $obj->get('bar');



More information about the limb-svn mailing list