That brings us to the next important component in a web server, the CPU(s). For our new server we were determined to go with an SMP solution, simply because a single CPU would quickly be overloaded when the database is queried by multiple clients simultaneously. An SMP configuration would do significantly better when multiple requests have to be processed at the same time, because they’ll be able to handle multiple threads simultaneously. The only decision we had to make is what manufacturer and architecture to go with. Or rather, do we go with a dual Intel or a dual AMD?
We could’ve gone with AMD’s
Athlon MP but we’d then have had to deal with an excessive amount of heat in a small 2U-rack case, and a chipset that has yet to prove itself in the server market. Nevertheless we’ve looked into a dual AMD solution with two Athlon MP 1800+ CPUs and the popular
Tyan Thunder K7, Tiger MP and MPX motherboards. We unfortunately weren’t too pleased with the stability, clearly our marks were set higher than the platform was able to achieve, or we simply were not doing something right. We’ve tested and retested and even made significant changes to our initial test setup to see if we could get the Thunder K7/Tiger MP(X) and the dual Athlon MP stable, but failed. Whether this was caused by a misconfiguration on our part, a software incompatibility or something else, we don't know. We however do know that others have been succesfully running Athlon MP servers with a number of different applications, including webservers.
Fig 4. One of the Intel Tualatin CPUs that made it into our webserver.
We then started to look towards Intel’s SMP solutions, a dual Xeon based on the Pentium III architecture sounded appealing, and dual 900MHz Xeons with 2MB cache were well within our budget. But after some performance and database tests we quickly found that a dual 1.26GHz Tualatin ran circles around the dual 900MHz Xeons, even with the 2MB cache. On top of that the Tualatin platform was much smaller physically than the Xeon platform so we could stick with the 2U-rack case that we initially planned on using. Stability wasn’t a concern with either platform, as both completed many rounds of testing without a single problem. Our final pick were two 1.26GHz Intel
Tualatins with 512Kb of cache, which attributed greatly to the web server’s performance.
Fig 5. Alpha's excellent heatsinks featuring an embedded copper slug for better heat dissipation.
Naturally we could’ve used the boxed Intel heatsinks for these CPUs but we frankly wanted something with a little more reserve and cooling potential.
Alpha Company Ltd. was one of the manufactures we contacted as we’ve been using their products in our labs and in our personal systems for years and they manufacture some of the most powerful and innovative heatsinks available. The heatsinks we’ve used are the low-profile version of their popular PAL6035 with a copper slug embedded in the aluminum base and outfitted with high-rpm fans that are excessively loud, but do a formidable job of keeping the CPUs cool. For a web server mounted in a rack case noise isn’t an issue really, as it’ll be placed in a rack at an ISP anyway, far away from human ears.