1.2 Performance
Within any system, performance is always important. The performance of your personal computer in some ways dictates how fast you can get your work done. Servers are not any different, with the exception of user quantity. Personal computers typically have only one person to support, whereas servers have to support thousands, sometimes millions, of users. The ability of a machine to respond to a request within a certain period of time is greatly affected by the performance of the machine. Many different items make up the quality of performance.
1.2.1 CPU
The CPUcentral processing unithas often been referred to as the "brain" of the computer, and rightly so, for all information that is processed on a computer is controlled by the CPU. On a mainframe system, the CPU would often span several circuit boards, but in personal computers and servers, the CPU is housed within a small chip on the motherboard, called a microprocessor.
The CPU consists of two components: the arithmetic logical unit (ALU) and the control unit. The ALU is responsible for arithmetic and all logical operations performed on the machine, while the control unit is responsible for the extraction, decoding, and execution of instructions stored in memory as well as for calling on the ALU when necessary for computation.
NOTE
Remember, even though we use the decimal system and text to communicate, the computer uses only binarya system of language that uses only 0's and 1's to communicate. The CPU plays a vital role in coding and decoding the 0's and 1's into a language that users can understand.
Within any computer, the CPU is what dictates how fast the machine can process information. The CPU must process all information that is sent to the screen (as well as a lot that is not). A slow processor will be evident to the user. Even more so, a computer that serves users on the Internet or within a large organization will suffer performance loss due to a slow processor.
Most of the servers that are manufactured today can now be equipped with dual processors: two processors within the same machine sharing the processing load. Some hardware manufacturers are producing machines that run between 4 and 64 processors within the same machine. As these types of machines, as they become more affordable, will assist systems administrators in eliminating the processor as a possible bottleneck within a system.
1.2.2 Memory
The memory within a machine, also called RAM (random access memory), is responsible for short-term storage for programs and applications. A computer uses RAM to cache working data. In the same way that a human brain has a short-term memory and long-term memory, a computer has RAM, which stores data temporarily, and a hard drive, which stores data for extensive periods. While a hard drive is nonvolatile memory, meaning that it retains data regardless of the power state; RAM is volatile memory, for it loses all data stored when a machine is powered off.
The importance of memory cannot be underestimated. When a PC or server loads a program or operating system, the files needed to run that application are loaded into memory. If there is not enough memory to load the applications and files being used, the system will be forced to store the excess data on the hard drive, where access will be significantly slower. To ensure optimal performance, assess the memory needs of your application prior to purchasing hardware and ensure that you have adequate memory not only for the application you want to run, but for the operating system and services as well.
1.2.2.1 Memory Types
There are two basic types of RAM, SRAM (static RAM), and DRAM (dynamic RAM). SRAM is memory that remembers its content, while DRAM needs to be refreshed every few milliseconds. While SRAM is more efficient, it is also more expensive and tends to be used for L2 cache rather than for system memory.
Because SRAM is much more difficult to produce, the industry has standardized with DRAM. DRAM comes in many flavors:
FPMfast page mode
ECCerror-correcting code
EDOextended data output
SDRAMsynchronous dynamic RAM
FPM RAM was the first type of RAM introduced to Pentium computing and came in SIMM modules that had to be loaded in pairs. The transfer type was 70ns and 60ns. Shortly after its introduction, FPM RAM was replaced with EDO RAM, a faster (60ns or 50ns), more reliable memory architecture. Because of the demand for fault tolerance, ECC RAM was created. ECC RAM provides error correcting within the RAM itself. ECC was much more reliable than its predecessors and became the standard for PC-based servers due to its parity-based error checking and recovery. Recently, SDRAM has become the most common memory in use due to the fast response times of 8ns to 12ns. SDRAM also integrates the error-checking technology of ECC RAM, making it the smartest choice for PCs and servers alike.
1.2.2.2 Virtual Memory
Although a PC or server may have a significant amount of RAM, there will always be times when the machine needs more memory than it has. To overcome this limitation in some of the first personal computers ever developed, engineers designed the operating system to use what is called virtual memory. By using virtual memory, an operating system sets aside a small portion of the hard drive to be used like RAM, so that if the machine needs to work with more information than can be stored in RAM, it will use the hard drive space as a "virtual" memory space. This type of process is often referred to as paging or accessing the page file, for the space used for virtual memory is actually a file stored on the computer's hard drive.
Virtual memory allows for computers that have a memory limitation to run programs they may otherwise not be able to run; however, there is a drawback. Reading and writing data to the hard drive is a much slower process than reading and writing data to RAM and is therefore a performance hindrance in many cases.
For most servers, a performance monitor program will detail the amount of paging taking place on a server. Paging should be minimal. If paging is consistently high, it is typically indicative of a lack of RAM within the machine.
1.2.3 Disks
The function of the hard disk should be central to any discussion of performance. If the CPU in a computer is the brain, and the RAM is the short-term memory, then the hard disk is the long-term memory. The ability to recall information that may not have been accessed for a long period of time is core to any computer system.
A hard diskor hard driveis a magnetic stack of flat metal platters that store information in contiguous sectors. A small arm, or spindle, moves back and forth across the disk to read and write information to the disk. As mentioned before, the hard disk, unlike RAM, does not lose its data when the computer is powered off. The data that is stored is permanent until it is deleted or overwritten.
The performance of the disk is related to the ability of the access arm to move back and forth across the disk and obtain information. There are two types of hard disks that are common in the PC market: SCSI disks and IDE disks. IDE stands for Integrated Device Electronics and is the standard mass-storage device interface for PCs. IDE allows for two devices to be connected to each interface, typically configured in a master/slave role. The transfer speeds used to be limited to 16 mbps (megabits per second), but recently have been enhanced to provide 33 mbps (ATA/33) in most machines and up to 100 mbps (ATA/100) in new models.
SCSI stands for Small Computer System Interface. SCSI, pronounced skuzzy, is a mass-storage device interface that is widely used within high-end computing environments. This architecture provides up to 160 mbps transfer rates. SCSI is unique because, unlike IDE, SCSI supports up to seven devices on one interface. Devices attached to a SCSI bus are daisy chained, using a special cable so they can all be controlled and maintained by the same controller. Because they are on the same controller, multiple disks can be written to and read from simultaneously. This makes SCSI a faster platform than IDE and more suitable to the server market. The difference, however, is in the cost. SCSI devices tend to be more expensive that IDE devices.
As you can see, the type of hard drive you use for a system can greatly impact the performance.
1.2.4 Network
Among all of the items that allow a computer to send and receive information, the network connectivity is the most important. The fastest computer in the world is of no value if it cannot serve its clients. It is vital that the speed of the network that a computer is connected to be fast enough to allow the processing within a machine to operate freely, without hindrance. Too often, individuals invest significant amounts of money into hardware and then use second-rate network standards to connect it to the network.
One of the very first LAN standards was called Token-Ring and ran at 4 mbps. This technology, pioneered by IBM, was on the forefront of networking and dictated that traffic flowing through a network should follow a ring pattern. This technology implemented a virtual ring that was passed from computer to computer on the network. When a computer had the token, it could transmit and receive all messages destined for other computers on the network. When the computer did not have the token, it remained silent. This created a highly fault-tolerant networking platform. Later, the Token-Ring specification was redesigned to operate at 16 mbps, which offered high-speed, fault-tolerant data transmission and a vast improvement over the 4 mbps standard. Unfortunately, strict patenting laws, driven by IBM, made the technology expensive to implement.
Shortly after the development of Token-Ring networking, another standard called Ethernet was being developed. Ethernet was a joint effort by Xerox, Digital Equipment Corporation, and Intel. Ethernet uses a bus or star topology and supports data transfer rates from 10 mbps to 1000 mbps. Unlike Token-Ring's token-passing technology, Ethernet provides a network where all machines can broadcast their information at any time. When more than one machine speaks at once, it causes a collision, which in turn causes all the machines on the network to "timeout" for a specific period of time before retransmitting. This technology, on the surface, may seem inferior to token-passing technologies because of the constant collisions, but Ethernet, due to its inexpensive cost and nonproprietary development, has far surpassed the installed base of Token-Ring networks.
From a performance standpoint, network speed should never be the bottleneck in the deployment of any system. Fast-changing technology horizons have ensured that high bandwidth remain inexpensive and easy to maintain. Technologies such as ATM, Gigabit Ethernet, and FDDI are all examples of high-speed networking options that can provide a system with high connection speeds and thus improved performance.