IBM 440 Server User Manual


 
Chapter 3. Planning 101
Having faster machines in the server hardware space means more parallelism
(more processors, larger memory, larger disk arrays, additional PCI buses, and
so on). The obvious case of software that does not scale is DOS. Run DOS on a
server with eight CPUs, 16 GB of memory, equipped with 250 15K RPM disks in
RAID arrays, and you get the same performance as if you have one CPU, one
disk, and 640 KB of memory. Obviously, the server isnt slow. The problem is that
the software (in this case DOS) does not scale.
Software scalability is a complex subject, one most people don't consider until it
is too late. Often people purchase new high-performance SMP servers expecting
huge performance gains with old applications, only to learn the bottleneck is in
the server application. In this case there is little they can do to efficiently utilize
the new SMP server until the application is modified.
A scalable application makes use of greater amounts of memory, generates
scalable I/O requests as the number of disks in a disk array increases, and will
utilize multiple LAN adapters when a single LAN adapter limits bandwidth. In
addition, a scalable application has to detect the number of installed processors
and spawn additional threads as the number of processors increases to keep all
processors busy.
Hyper-Threading increases the number of logical processors and demands that
the software spawn additional threads to run at maximum efficiency. However,
most applications don't yet do this. This is why Hyper-Threading performs well
with two-way and four-way SMP systems, because many applications already
generate sufficient threads to keep four physical/logical CPUs busy. But at
eight-way and 16-way, the applications have to do even more than they do today
to efficiently utilize Hyper-Threading. All of these things must be engineered into
the server application and operating system. In general, the only applications that
scale past four-way are database applications.
3.6.2 SMP and server types
SMP has a direct relationship to the type of application server being used. If the
server is used as a file server, adding a processor to a file server does not
significantly improve performance, whereas it can result in a very high
performance gain for an application server.
As you can see from Figure 3-12, a file/print server benefits only marginally from
the addition of a second processor and can actually degrade performance when
the third and fourth processors are added. However, with a database or
application server, the addition of one to three processors makes a marked
improvement in processing power.