Microsoft SQL Server 2000 Performance Optimization and Tuning Handbook

This chapter discusses SQL Server 2000 performance with respect to the CPU, memory, and disk resources found on a Windows 2000 server.
The first resource on a Windows 2000 server that is usually monitored is the CPU. CPUs have been gaining in power dramatically over the last few years, and Windows 2000 supports multiprocessor systems with up to 32 processors (with Microsoft Windows 2000 Datacenter).
Although a multiprocessor system may not reduce CPU bottlenecks when a single threaded process is consuming the CPU, multithreaded processes such as SQL Server 2000 will benefit greatly.
CPU is a system resource. The more CPU power available the better the system is likely to perform. Windows 2000 schedules CPU time to the threads of a process, and, if more threads require CPU time than there is CPU time available, a queue of waiting threads will develop. Sometimes a processor bottleneck is actually masking another bottleneck, such as memory, so it is important to look at CPU use in conjunction with other resource use on the system. This first part of the chapter provides an overview of CPU usage and looks at how SQL Server 2000 makes use of the CPU. It then looks at how CPU bottlenecks can be observed.
To understand the way that Windows 2000 uses the CPU we first of all need to consider the difference between a process and a thread. A process...