Use third-party tools to optimize multiprocessor configurations
Last month, I mentioned that you achieve optimal application performance from multiprocessor systems when you tune Windows NT and your applications to your hardware configuration (see "8-Way Scalability," September 1998). For example, on an 8-way system you can dedicate four processors to SQL Server, two to Internet Information Server (IIS), and two to NT. On a 4-way system you can balance your IRQ load across the processors, or you can dedicate processors for different network cards or disk interfaces.
Performing this tuning can be complicated and risky. You have to tune NT software and set processor affinities via a Registry editor because Microsoft doesn't provide any other tools for NT 4.0. NT 5.0 will include a symmetric multiprocessing (SMP) tuning utility.
If you don't want to wait for NT 5.0, you can use third-party tools to tune NT safely. The Windows NT Magazine Lab Guys tested two tuning products. MCSB Technology's AutoPilot P/SA is a tool that makes tuning configuration decisions. NCR's SMP Utilization Manager 2.5, reviewed on page 80, is a full-blown GUI tool that lets you set and reset tuning parameters.
John Enck
AutoPilot P/SA
Systems administrators and IS managers must squeeze every ounce of performance from their Windows NT servers. The Windows NT Magazine Lab Guys use many tools to tweak our servers for fast I/O, few collisions, and maximum performance. The Lab is always looking for new products to improve system performance.
MCSB Technology's Performance Assistant Family consists of three products: Resource and Data Activity Repository (RADAR), Performance Tool Kit (PTK), and AutoPilot Performance/Scalability Accelerator (P/SA). RADAR is a data repository tool that accumulates and stores system performance information. PTK lets you access the data in the repository. AutoPilot P/SA uses the information to adjust how the system distributes the workload among the processors.
I tested AutoPilot, which separates facets of its functionality into parts that you can combine into loadable run-time modules. These modules let you collect data in various forms to generate a series of system thread and environmental recommendations for optimizing system performance. Collectively, the modules detect and react to conditions that impede system performance, including resource contention, high cache miss rates, and thread starvation.
AutoPilot works with the NT scheduler to make informed decisions concerning threads you select to run. AutoPilot's collection modules gather system data and pass it to algorithm and environmental modules. These modules use the data to detect potential performance problems. AutoPilot determines how to optimize the system workload.
I tested AutoPilot's performance on a name-brand server with four 200MHz Pentium Pro processors, 512KB Level 2 cache, 2GB of RAM, a 3.5" drive, a CD-ROM drive, two SCSI 4.5GB hard disks, an Adaptec 7880 SCSI controller, and an Adaptec 6944-UW four-port network card. I inserted the AutoPilot CD-ROM into my test server and accessed the setup file from the CD-ROM's root directory.
The installation wizard walks you through each step and prompts you to update system files if necessary. When you update the system files, AutoPilot reboots the system to update the appropriate run-time files. After the installation finishes, you must reboot the system again to start the AutoPilot service.
An AutoPilot icon appears in the tool tray in the lower right corner of your screen. Right-click the icon to open the AutoPilot P/SA Properties dialog box. AutoPilot is simple to use. Select the AutoPilot2 check box in the Modules tab, as Screen 1 shows, to load all the modules. To view individual modules, click the plus symbol (+) next to the AutoPilot2 check box. AutoPilot's modules are NT device drivers that dynamically load if you select their check box and unload if you clear their check box.
The AutoPilot service starts manually by default, but you can configure it to start automatically. Click the word AutoPilot2 and click Properties to open the General tab. Select the Enable automatic startup check box, and click OK. AutoPilot will then start automatically after each system boot.
To test the 4-way server's system performance, I ran the AIM Technology Domain Server WNT tests before and after I installed AutoPilot. AIM tests simulate domain server tasks, including light file transfers; network routing; packet forwarding; email; and shared applications such as spreadsheets, word processing, and network maintenance. (For more information about AIM Technology's tests, see "AIM Technology Server Benchmark Test," page 78.) I had to run the AIM tests twice after I installed AutoPilot: once to establish a profile and again to test performance.
Before I installed AutoPilot, the server's WNT Peak Performance was 1378.7 and its WNT Sustained Performance was 1313.9. After I installed AutoPilot, the WNT Peak Performance jumped to 1408.2, an increase of 2 percent. The WNT Sustained Performance jumped to 1344.7, also an increase of 2 percent. I was disappointed with this performance increase, but I attributed the results to the profile run. When I ran the tests again, performance increased only slightly.
The system performance increases we measured weren't as great as the substantial performance improvement MCSB Technology advertises. Our tests yielded only minor performance increases. To evaluate AutoPilot in your environment, download a 14-day evaluation copy from MCSB Technology's Web site.
Jonathan Cragle