2005.01.18 04:57 PM

Windows Performance Tweaks

While cruising Chapter 17 — Tuning .NET Application Performance, which is part of the Improving .NET Application Performance and Scalability series from Microsoft, I ran into a couple of Windows performance tweaks I hadn't heard of before. These are probably old news to most Windows system administrators, but they were new to me.

From chapter 17, Disk I/O, Tuning Options:


  • Use Diskpar.exe on Windows 2000 to reduce performance loss due to misaligned disk tracks and sectors. You can use get the Diskpar.exe from the Windows 2000 Resource Kit.
  • Disable creation of short names. If you are not supporting MS-DOS for Windows 3.x clients, disable short names to improve performance. To disable short names, change the default value of the \NtfsDisable8dot3NameCreation registry entry (in HKEY_LOCAL_MACHINE \SYSTEM \CurrentControlSet \Control \Filesystem) to 1.
  • Disable last access update. By default, NTFS updates the date and time stamp of the last access on directories whenever it traverses the directory. For a large NTFS volume, this update process can slow performance. To disable automatic updating, create a new REG_DWORD registry entry named NtfsDisableLastAccessUpdate in HKEY_LOCAL_MACHINE \SYSTEM\CurrentContolSet \Control \Filesystem and set its value to 1.

Here's a little more info on Diskpar.exe from ActiveXperts Software:

DiskPar is a command-line tool that finds and modifies the starting sector on a disk to improve disk performance. It is only used with multi-disk systems. Windows has an internal structure called the Master Boot Record (MBR) that limits the maximum default hidden sectors to 63. For this reason, the default starting sector for disks that report more than 63 sectors/track is the 64th sector. For disks with 64 or more sectors/track this can cause misalignment when data is transferred to and from the disks. For example, with a disk that has 64 sectors/track, what appear to be track aligned transfers begin at the last sector of one track and span to the next track.

So what kind of performance improvement are these tweaks good for - a little, a lot?


Comments

Hey Eric, great post - nice to see something for mere mortals on your blog!

Maybe you could write something up on your thoughts on the whole Improving .NET Application Performance and Scalability series? Worth the time? Not worth the electrons it's printed on?

As for whether this stuff is worth it - I don't know - I've always just overpowered any problems with server upgrades ;)

Eric G. Harrison | 2005.01.18 07:20 PM

Hi Eric,

We missed you last night!

Regarding the .NET series, it's worth a look. Better as an on-line reference than a straight read (I only printed and read it because I was out of books and mags, and who's going out in this weather?). Most of the stuff you'll know (or will at least have read), and on the off chance you do read something that you didn't know, seeing it here probably won't cement it in your brain anyway - just too much stuff given too little attention. I wasn't surprised by anything I read, but did stumble onto a few new things (hence the post). What I really like (and will keep shortcuts to) are the checklists:

http://msdn.microsoft.com/library/en-us/dnpag/html/scalenetcheck.asp

In fact, they should have started with the checklists and used them as an index into the larger chapters. Instead, you get the chapters, and then the checklists, and the lists don't even include links back to their explanations!

I suppose my server admin naiveté shows a little when I seriously ask if these particular tweaks might provide any real advantage. When you're me and your servers (and your server budget) are tapped out and you've got very little time and server config is not your main bag, you're always looking for the little silver performance bullets. "Maybe these will give me that extra 1-2%..", I figure.

See ya!

ewbi.develops | 2005.01.18 09:08 PM

Hot damn! ! !, I did two of the three tweaks above, and now my machine is snappy, I have an old Toshiba Satellite 4600 with 256 MB of memory, and I thought that I needed more memory, which of course would hurt, but I just new that my performance was Disk IO related, I just could never find out how.

While using a disk IO monitoring utility some time ago, I remember be surprised how much IO was happening when doing even simple things, I just never new about these.

Basically these tweaks, particularly the one about updating directory time because I have a lot of them and they are heavily nested, have given new life to my machine.

Thanks Eric ;)

Darnley | 2005.02.24 09:58 AM

Hey Darnley,

Glad to hear these things result in some noticeable gains. I hadn't actually considered them for my own machine (I was only really thinking of some servers), but now I'll have to give them a try.

ewbi.develops | 2005.02.24 10:43 AM

Lots of interesting Windows performance tweak myths:

http://mywebpages.comcast.net/SupportCD/XPMyths.html

ewbi.develops | 2005.12.07 05:56 PM

Interesting stuff. I have listed also some performance tweaks on my blog.

http://www.free-registry-cleaners.biz/category/windows-tips/

Registry cleaner reviews - | 2008.05.07 06:22 AM


TrackBack

TrackBack URL:  http://www.typepad.com/services/trackback/6a00d8341c7bd453ef00d8346ad15669e2

Listed below are links to weblogs that reference Windows Performance Tweaks: