Windows 95 Performance Tuning: The Issues

This section summarizes performance issues, which are related principally to computer hardware.

486 versus 386 processors.

Windows 95 uses more 32-bit code than Windows 3.1, so it benefits more than Windows 3.1 did from a 486-based processor. This is because the 486-class chip is better optimized for 32-bit code than the 386-class chip. For a given clock rate, if you run a 16-bit performance benchmark on a 386-based versus a 486-based computer, the 486-based computer will outperform the other computer. If you run the same benchmark using 32-bit code, the 486-based computer will outperform the 386-based computer by an even greater margin. Overall, Windows 95 provides significant performance improvements on a 486-based (or higher) processor.

DX versus SX processors.

Although the minimum requirement to run Windows 95 is a 386SX-based processor, the SX processor is not a full 32-bit CPU. The SX-based processor accesses memory using 32-bit addressing, but it accesses data in 16-bit increments. Although Windows 95 will run on an SX-based processor, you will most likely not be sastisfied with the perceived performance when compared to a 16-bit operating system such as Windows 3.1.

Hard disk speed.

Hard disk speed affects Windows 95 more than Windows 3.1. To support many applications running at once, applications are paged out to the swap file when there is more demand for memory than what is available physically. This is a very efficient mechanism for running many applications in a constrained memory environment. Windows 95 performance can be enhanced greatly by installing a faster hard disk. Hard disk speed will also have a great effect on performance when running File and Printer Sharing services.

Processor and bus speed.

In Windows 95, processor and bus speed have a greater impact on display performance than under Windows 3.1. Display performance under Windows 3.1 was affected by inefficiencies in the monolithic display drivers and typically poor bus throughput (mostly ISA), so the CPU would typically encounter bottlenecks in either the bus or monolithic driver when writing to the display. With PCI and the miniport driver model under Windows 95, a CPU can send data as fast as possible down the PCI bus and through the miniport driver without encountering a bottleneck. This means that CPU performance can greatly affect display performance in Windows 95.

Miniport drivers for display adapters.

The new display drivers in Windows 95 have been optimized for enhanced display speed and improved graphics performance. Microsoft created a new universal driver with a better mechanism for manipulating memory bitmaps, which provides fast, reliable graphics support. Microsoft provides miniport drivers for most current display adapters, and these new drivers should be used whenever possible. Contact the hardware manufacturer to obtain new drivers if the correct driver is not provided with Windows 95.

Protected-mode drivers for increased performance and reliability.

Windows 95 provides protected-mode drivers for most devices, including display, network, disk, and so on. These drivers have been developed and tested to ensure better performance and increased reliability over real-mode drivers. After Windows 95 switches into protected mode during system startup, any time an I/O operation uses a device controlled by a real-mode driver, the computer has to switch from protected mode to virtual 8088 mode. This is a very expensive operation in terms of CPU cycles and typically has to be done several times during a single I/O operation, adversely impacting performance. Relying on a real-mode driver for I/O operations also reduces the degree of multitasking that Windows 95 can provide because real-mode drivers were not designed for a preemptively multitasking environment. Therefore, wherever possible, use protected-mode device drivers.

Added memory.

Unlike Windows 3.1, caching in Windows 95 is dynamic, which means that Windows 95 performs better than Windows 3.1 when you increase the amount of system memory. Also, under Windows 95 you do not have to reconfigure the operating system when you change the memory configuration; Windows 95 reconfigures itself automatically.

Low memory (4 MB) computers.

Most of the tuning necessary for a computer with low memory happens automatically, but to reduce the size of the Windows 95 working set and give the maximum amount of memory to applications, run only one network client; if possible, run a single network protocol; and run the fewest possible network services.

Entended Capabilities Port (ECP) for printers.

For locally attached printers, or for computers acting as print servers, it's helpful to use a computer that supports the ECP specification. This ensures better print throughput and bidirectional communications.

For information about performance related to network adapters, see "Optimizing Network Performance" later in this chapter.