Re: Benchmarking 4.3.2 vs 4.1.2
| From: | Jeff Moore | Date: | Wed, 04 Jun 2003 17:24:32 +0000 |
| Subject: | Re: Benchmarking 4.3.2 vs 4.1.2 | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-2168@lists.php.net to get a copy of this message | ||
On Wednesday, June 4, 2003, at 12:21 PM, Rasmus Lerdorf wrote:
Uh, the number of open() calls really shouldn't change. Are you sure you are comparing the same code?Yes. I am sure.
And how are you testing?I attach fs_usage to the running httpd process and hit the script a single time. http://developer.apple.com/techpubs/macosx/Essentials/Performance/PerformanceTools/fs_usage_Fi_alysis_Tool.html Here is the full trace for accessing a zero length file called control.php: (notice how each directory gets opened three times. in 4.1.2 each directory gets opened twice.)
read F=3 B=0x1c5 stat /Library/WebServer/Documents/rot/bench/control.php open [ 2] /Library/WebServer/Documents/rot/.htaccess open [ 2] /Library/WebServer/Documents/rot/bench/.htaccessstat
stat . chdir /Library/WebServer/Documents/rot/bench open F=4 . chdir /Library/WebServer/Documents/rot/bench lstat control.phpstat
lstat . open F=5 .. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x68 lseek F=5 O=0x00000000 close F=5 lstat .. open F=5 ../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x208 lseek F=5 O=0x00000000 close F=5 lstat ../.. open F=5 ../../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x58 lseek F=5 O=0x00000000 close F=5 lstat ../../.. open F=5 ../../../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x2ac lseek F=5 O=0x00000000 close F=5 lstat ../../../.. open F=5 ../../../../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x218 lseek F=5 O=0x00000000 close F=5 lstat ../../../../.. fchdir F=4 close F=4stat
stat .stat
lstat . open F=4 .. fstat F=4 fstatfs F=4 fstat F=4 getdirentries F=4 B=0x68 lseek F=4 O=0x00000000 close F=4 lstat .. open F=4 ../.. fstat F=4 fstatfs F=4 fstat F=4 getdirentries F=4 B=0x208 lseek F=4 O=0x00000000 close F=4 lstat ../.. open F=4 ../../.. fstat F=4 fstatfs F=4 fstat F=4 getdirentries F=4 B=0x58 lseek F=4 O=0x00000000 close F=4 lstat ../../.. open F=4 ../../../.. fstat F=4 fstatfs F=4 fstat F=4 getdirentries F=4 B=0x2ac lseek F=4 O=0x00000000 close F=4 lstat ../../../.. open F=4 ../../../../.. fstat F=4 fstatfs F=4 fstat F=4 getdirentries F=4 B=0x218 lseek F=4 O=0x00000000 close F=4 lstat ../../../../.. open F=4 . chdir /Library/WebServer/Documents/rot/bench lstat control.phpstat
lstat . open F=5 .. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x68 lseek F=5 O=0x00000000 close F=5 lstat .. open F=5 ../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x208 lseek F=5 O=0x00000000 close F=5 lstat ../.. open F=5 ../../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x58 lseek F=5 O=0x00000000 close F=5 lstat ../../.. open F=5 ../../../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x2ac lseek F=5 O=0x00000000 close F=5 lstat ../../../.. open F=5 ../../../../.. fstat F=5 fstatfs F=5 fstat F=5 getdirentries F=5 B=0x218 lseek F=5 O=0x00000000 close F=5 lstat ../../../../.. fchdir F=4 close F=4 open F=4 /Library/WebServer/Documents/rot/bench/control.php fstat F=4 fstat F=4 lseek F=4 O=0x00000000 lseek F=4 O=0x00000000 fstat F=4 read F=4 B=0x0 close F=4chdir
lstat /usr/share/zoneinfo/GMT open F=4 /usr/share/zoneinfo/GMT fstat F=4 read F=4 B=0x38 close F=4 write F=3 B=0xee lstat private/etc/localtime open F=4 /usr/share/zoneinfo/America/Detroit fstat F=4 read F=4 B=0x32b close F=4 write F=17 B=0x9a read F=3 B=0x0 close F=3