Windows 2000's out-of-the-box performance is better than its predecessor's--far better than Windows 98's and a bit better than Windows NT 4.0's. Not only does Windows 2000 rack up better benchmark scores, it's also a lot more self-sufficient. Microsoft's flagship OS is better able to tune its own performance to suit different situations--within reason, of course.
A little more speed and self-regulation are great, but Windows 2000 is far from a perfect OS, and there's still room for performance improvement. The good news is that you have many opportunities to optimize performance. You can start with the usual suspects, such as updating display drivers or tweaking TCP/IP settings. That's the easy stuff; in this article, we'll go after bigger game and tackle the performance bottlenecks that affect your business in big ways.
We'll look at five key performance areas:
- Services and applications
Depending on your configuration, you may not be able to identify lost performance in all of these areas. So some tweaking and experimentation will likely produce the best results.
This story originally appeared in CNET Enterprise on 4/16/01.
Typically, after installing Windows 2000, you find that everything zooms along for a few weeks. Then--sometimes suddenly--the computer becomes lethargic and limps along, with the disk thrashing about wildly every time you open a file. If that sounds familiar, you're not alone. The problem is file fragmentation, and it's one of the most common causes for poor Windows 2000 performance.
Like other operating systems, Windows 2000 doesn't store files contiguously. It stashes bits and pieces here and there on the disk, and the more scattered files get, the more work the disk has to do to read them. The impact of fragmentation--or the performance boost from defragmenting a disk--is too often overlooked. It's the number one plague upon Windows 2000's performance and, thus, job one when tuning your system. Defragmenting a disk can yield performance gains as high as 100 percent, although 50 percent is more typical.
It's a myth that fragmentation is only a desktop problem and that it doesn't afflict servers. In fact, fragmentation is a bigger problem for server disks than desktops. Server disks can be busy throughout the day, with scores of users deleting, adding, and changing far more files than on any single desktop PC. Microsoft's new IntelliMirror features in Windows 2000 also contribute to file activity and resulting fragmentation.
Windows NT lacks a disk defragmenter, but Windows 2000 comes with a version of Executive Software's excellent Diskeeper defragging utility. On the Start menu, select Programs -- Accessories -- System Tools -- Disk Defragmenter. Then, in the top pane, click the disk you want to check and select Analyze. The utility will inspect the disk and tell you if it requires defragmenting. If it needs it, another click will start the defragger.
You should defragment frequently; how frequently depends on how busy your server's disks are. If you want to schedule defragmentation to launch at regular intervals, you'll need the full version of Executive Software's Diskeeper or another third-party defrag utility such as Raxco Software's PerfectDisk 2000; PerfectDisk is an impressive tool that proactively defragments your disks.
Your file servers take a pounding as users create and modify files and grind their way through megabytes--or even gigabytes--of data every day. To find out just how bad a beating your servers are absorbing, use Windows 2000's PerfMon utility to measure file-server performance. Take periodic snapshots and chart them to identify the ebb and flow of server activity. (See the Windows 2000 Server Resource Kit to learn more about using PerfMon.)
Immediate relief for your servers might come from an unexpected source. Windows 2000's Offline Files--more properly, Client-Side Caching (CSC)--isn't usually considered a performance-tweaking feature, but it can be used to improve your network's performance. A server's CPU caches instructions in memory to improve its performance, and Windows 2000 caches data in memory to improve disk performance. CSC caches network data on local (client) disks in a similar manner to help reduce network traffic. By reducing traffic, you may not actually be increasing your server's performance, but with local caching, network users will see better response, and because the overall network load has been lightened, the server will be better able to handle additional requests.
The first step is to enable CSC across the enterprise. To do that, use Group Policy and, in the Offline Files node, set the enabled policy to turn on CSC. Aside from enabling CSC, you get the added benefit that any file a user saves on the network is also cached locally; Windows 2000 will then use the local copy unless the file changes.
The next step is to enable CSC for each share. In Windows Explorer, right-click a share and select the Sharing tab; then, click Caching. You'll be offered three choices:
- Manual Caching For Documents. This is the default setting. Users must explicitly make documents available offline. Use this setting if you want Windows 2000 to cache only files that users create on the network.
- Automatic Caching For Documents. This is the appropriate selection for shares containing volatile data. When users open documents on this share, Windows 2000 automatically caches them locally. This setting ensures file availability if the server goes offline, but it doesn't help performance.
- Automatic Caching For Programs. This is the best setting for shares containing read-only data. When users open files on this share, Windows 2000 automatically caches them locally. The operating system always opens the local copy of the file, unless the server version is newer. This is where you save bandwidth.
Microsoft's Office 2000 suite is probably the most popular set of applications running on Windows 2000 networks, and lack of memory is one of the big hits on Office 2000's performance. But most applications will benefit from ample memory when running on Windows 2000.
The solution, of course, is to throw more memory at the computer. But how much? First, identify how much memory you think Windows 2000 needs for itself. Microsoft says Windows 2000 needs as little as 64MB of memory, but we recommend that you start with no less than 96MB. On top of that, add 4MB for each Office application you want to run concurrently--except for Access and Outlook, which have more voracious memory appetites, so add 8MB for each. So, for example, if your users want to run Word, Excel, and Outlook at the same time, the computer should have 96MB + 4MB + 4MB + 8MB of memory. That adds up to 112MB, which can be rounded up to 128MB.
If your company leases its PCs, you may not want to purchase additional memory. While not as effective as adding physical memory, a number of available software products can aid in optimizing memory. Some examples of these are:
- MemMonster NT from Winboost.com
- MemoKit from ALS Software
- WinRAM Booster Pro 2001 from Totalidea Software
- RAM Idle from Priyo Hutomo
Windows 2000 trips itself up, steals processing power, and gobbles up memory by installing a bunch of services that may be unnecessary. For example, the Computer Browser service isn't necessary for desktop computers. This service keeps a list of computers on the network and provides that list to other computers. In most enterprises, this is a job for servers, not desktop PCs.
The only way to determine which services you can disable is to examine the list. Then experiment with the effects of disabling different services. The Services console, with its descriptions of each service, is a good guide. To open the console in Control Panel, select Administrative Tools -- Services. Many of the services that Windows 2000 starts by default are not required for day-to-day desktop use. But before disabling a service completely, select the service and change its Startup Type option to Manual so that you can easily restart the service if you find that it is needed.
When you log on to Windows 2000, the Start menu should appear in a matter of seconds, and logging off should be just as quick. But if you implemented roaming user profiles, logging on and off may seem to take forever. This is caused by the sheer amount of data in a typical user profile. And if you add in the user's documents, it can take even longer.
Microsoft included a clever fix for this problem: Redirected Folders. Redirected Folders moves documents and settings out of the user profile and onto a centralized network location. Windows 2000 has to download much less data when the user logs on, and the net result for a user is a faster logon.
You enable redirected folders using Group Policy. Select User Configuration -- Windows Settings -- Folder Redirection, and right-click the following nodes to redirect the folder by the same name:
- Application Data
- My Documents
- Start Menu
You should spend some time learning what all of the Redirected Folders options mean and check the resource kit's best practices for implementing this feature. In general, though, the default settings are the most appropriate.
A basic practice that could translate into performance gains is to make sure you keep Windows 2000 up-to-date. The drivers that ship with Windows 2000 may not be the best performers, and you may be able to realize big gains simply by updating those device drivers or upgrading with the latest Windows 2000 components. Make good use of Windows Update and stay in touch with your hardware vendors to ensure you have the latest device drivers.