Apache 2.0.53/PHP 5.0.4   32-bit/64-bit Comparison on AIX

      Of all the things I've read about 32 bit and 64 bit differences, my personal conclusion is: there is no conclusion. Some apps will run slower in 64bit, and some apps will run faster. There are so many variables to take into account, it's almost impossible to predict or calculate beforehand, unless your initmate with the code of the application your running and the OS and hardware on which it's running. So, in that light, I decided I would compile Apache 2.0.53 with PHP5.0.4 in both 32bit and 64bit modes and see which one ran faster. Why? Because I'm a loser, and have nothing better to do at three in the morning when I can't sleep. If your really looking for a quick and dirty answer, generally speaking, it seems from most tests results I've seen on various platforms, mostly Linux, that all things being equal, 64bit apps generally are slower. But not always. For DB2, at least on AIX, there is huge performance increase using the 64bt version over the 32bit version. Not even taking into account the fact that with a 64bit DB2 Instance you can go past the 32bit 2GB memory limit and go as high as you want (almost), which is another huge boost, for enterprise solutions requiring more than 2GB of memory. I saw some MYSQL tests out there somewhere that show for inserts and deletes, 64bit was faster, but selects were slower. In my personal testing at customer, we found for the same 32bit application command (if you must know, a VPM AT0EXPND) was taking 1.6 hours against the 32bit DB2 8.2 instance, is taking 15 minutes or so against the 64bit DB2 8.2 instance. With such a huge performance gain, we had to double take to make sure we really got what we were seeing. But we're not discussing large scale databases and enterprise solutions here, just some simple basic level tests. I should also note, I'm no expert in this field, just a general joe who wanted to see which bit mode I should run Apache and PHP in on my new server.

Test Environment:
OS:
AIX 5.3ML01 with Lastest  Apr05 fixes, except for xlC.50.rte, I kept that at the latest 6.0 level, which is 6.0.0.13 at the time. (I have other applications on this box that won't like xlC.50.rte at 7.0.x.x or above)

Machine:
44p270 RS/6000 with 4 375Mhz Power3+ Processors each w/8Mb L2 Cache,
5GB RAM, Fujitsu 10k 4.7ms avg seek time SCSI HDD

Compiler:
AIX Native VisualAge C/C++ at level 6.0.0.12

PHP Application for testing:
Gallery 1.4.4pl6 with 3226 pictures, 9 top level albums. Every Gallery Systems admin with more than a 2k pictures knows that Gallery Version 1 is of poor performance with many pictures, and especially with more than a few hundred or so in one album. G1 is file-based, New G2 (which isn't released, just CVS betas right now) is supposed to be much better, it's My-SQL based. These tests were performed for G1 only. I may update this article later for G2 figures.



Results:

Test1: Load my daughters album, for which the 1st level album contains only sub-albums of which containing about 2800 pictures.
Test2: Load Sub-Album Age3, which contains about 1300 pictures alone




A point of interest:
On my old 43p150 375Mhz Power2 with 1GB RAM, (processor not cabable of 64bit) the times are:
10.2s for Test1, 19.8s for Test2

Conclusions:
Well it seems for Apache2 with PHP5 on AIX5.3 with visualage compiler, 32 bit mode is faster!
I will probably update this once I have MYSQL installed, or mabey with some application with PHP calling my DB2 database.

Questions or comments, please direct them to: webmastr@snyderworld.org