Fixing Windows Vista, Part 4: Get smart about services

Fixing Windows Vista, Part 4: Get smart about services

Summary: In the three previous installments of this series, I discussed ways to improve the performance of Windows Vista by changing some settings (especially those installed by an OEM PC maker). Today's installment is a little different. Mostly, it's about not wasting your time following bad advice. The single most common bogus tip I read at Windows-focused websites is the one that advises Vista users to disable "unnecessary" services. What's an unnecessary service? They can't tell you, so they recommend that you waste yor time with tedious trial-and-error techniques. Bad advice. I'll save you time (and headaches) by identifying four specific circumstances under which you might want to disable services to improve system performance. Read on for the full details.

SHARE:

In the three previous installments of this series, I discussed ways to improve the performance of Windows Vista by changing some settings (especially those installed by an OEM PC maker). If you need to catch up, go read Part 1 (the pros and cons of a clean install), Part 2 (UAC tips and tweaks), and Part 3 (troubleshooting tools and techniques).

Today's installment in this series is a little different. Mostly, it's about not wasting your time following bad advice. Dozens of websites purport to offer tips on how to speed up Vista. In most cases, I've found the advice to be fairly obvious, but I've also seen plenty of popular tips that are just plain bogus.

The single most common bogus tip I read is the one that advises Vista users to disable "unnecessary" services. This tip starts with the reasonable argument that Windows Vista just has too damn many services running, and each service you shut down will free up memory and CPU cycles and put the zip, zing, and zoom back in your desktop. One popular website even lists several levels of recommended service configurations. (It doesn't have one entitled "OK, punk, do you feel lucky?")


  Image Gallery: I’ve created a gallery that shows how to measure the impact of services on system performance and decide which services are worth disabling.   Taming and Tweaking Windows Vista Services   Taming and Tweaking Windows Vista Services  

The one thing I have found every time I run across this tip is the complete absence of any evidence to establish what it's supposed to do for you. Instead, this tip is usually delivered as a vague recommendation that reads something like this snippet, taken from a very large, popular publication that shall remain nameless to spare them embarrassment:

But be careful! Click the Services tab, and uncheck only the services you're certain you don't need. To be safe, [open Msconfig and] uncheck one, reboot, and see if everything still works fine before moving on to another. Do your homework via online help or a web search before experimenting!

That is breathtakingly bad advice. It is as if the automotive columnist in your local newspaper told you to open the hood of your car and start disconnecting wires and hoses one at a time to see which ones made your car run faster or quieter or smoother. It might be hours or days or even weeks before you run a program that requires the service you disabled, at which point you might have no clue that the disabled service is the cause of the nonfunctional program.

Here's the reality: On an otherwise healthy PC running Windows Vista, disabling most built-in Windows services is extremely unlikely to have any noticeable effect on memory usage, startup or shutdown time, or system performance. On the contrary, you are more likely to create problems by disabling services. Not to mention the amount of time you will surely waste and the productivity you will lose with all that starting and stopping and rebooting and web searching.

I've identified four specific situations in which tweaking services might make a difference in the performance of an individual Vista system. In he following pages and in the screenshot gallery that accompanies this installment, I'll provide some background on how services work and then discuss these situations in detail. I'll also show you how to decide which (if any) of these services you want to modify. (Hint: For most people, the correct answer is "none.")

Page 2: What do you have to gain (or lose) by messing with services?

Page 3: The only Vista services that matter, performance-wise

Continue reading: What you need to know about services -->

What do you have to gain (or lose) by messing with services?

First, a definition. In the just-published Windows Vista Inside Out, Deluxe Edition, our discussion of services begins with the following definition:

A service is a specialized program that performs a function to support other programs. Many services operate at a very low level (by interacting directly with hardware, for example) and need to run even when no user is logged on; for this reason, they are often run by the System account (which has elevated privileges) rather than by ordinary user accounts.

Services run outside your user account context, typically during the startup process. From a performance perspective, there are three ways to measure the impact of services. The first is memory usage, the second is CPU usage, and the third is disk (I/O) activity.

Like its predecessors, Windows Vista offers multiple ways to examine which services are running on a system. The easiest tool to use is Task Manager. Press Ctrl+Shift+Escape to open Task Manager, and then look on the Processes tab. The default view shows only processes running under your user account; to see processes associated with services, you have to click the Show processes from all users button and answer a UAC prompt.

Task Manager without processes showing

The information in the second column (User Name) helps you spot the difference between processes running under your user account and services, which run under system-managed accounts with different levels of privilege.

The CPU and Memory columns help to identify how much impact each process is having on these two resources. If you're looking to save memory by disabling services, you're likely to be disappointed, On my main desktop, for example, I have 82 services running within 43 processes. Only three of those processes are using more than 20 MB of RAM, and those services that use a single process average less than 7 MB each.

And how about the CPU column? Again, most services work in bursts of activity, when they're performing their assigned task, and then settle down. If you click the CPU heading, you can sort the list of processes to see if any are consistently using excessive amounts of CPU and not surrendering.

The most interesting entries in the Processes list are those that run under the name Svchost.exe, which is described as Host Process for Windows Services. This is Windows' way of grouping individual services under a single process to simplify management. To see which services are running under a Svchost instance, right-click its entry in the Processes list and click Go To Service(s). That takes you to the Services tab, with the individual services highlighted in blue, as shown here. (If you click to sort by PID, you can see all these individual services in a single block.)

Services tab in Task Manager

So, which services should you pay attention to?

Continue reading: Which services really matter? -->

The only Vista services that matter, performance-wise

If you're having problems with performance and you suspect a service is to blame, the first place to look is at the list of third-party services, which are added by other programs and might be conflicting with another program or simply misbehaving. To see a concise list of third-party programs, use the Windows System Configuration utility, Msconfig.exe. Click the Services tab and select the Hide all Microsoft services checkbox at the bottom.

Msconfig third party services

You can use the check boxes to the left of each service shown here to temporarily disable a service, then restart and see if the problem you noticed has gone away. During the course of researching this article, I discovered that the Intel Viiv service running on a Dell XPS 420 was acting up for a minute or so every time I started up. The symptoms only appeared when I tried to run a program that wanted to run with administrative rights; clicking the program icon appeared to do nothing, and not until a minute later did I get the UAC dialog box I was expecting. Disabling the Viiv service, which I wasn't using, solved this problem.

You might be tempted to disable other services on the theory that you're never going to use them. The Tablet PC Input Service, for example, is enabled by default even on a desktop system. It uses no CPU resources at all, and disabling it recovers a mere 36 KB of RAM. Regaining that RAM will make absolutely no noticeable difference in performance, but it also won't hurt.

On the other hand, some services perform tasks you might not expect from their name. The Themes service, for example, runs the Aero user experience look and feel. If you disable it, you'll switch back to the ugly 1998-style Windows Classic look.

In my experience, only three built-in services have a meaningful impact on performance on a properly configured Windows Vista system:

  • Superfetch is Vista's new and improved caching service. It keeps track of the programs you run most often and tries to preload them into unused memory (as a background process) so that they're available in the cache when you need them. Superfetch really does work, cutting seconds off the load times for programs you use regularly. The trade-off is that Superfetch spends time and disk accesses managing itself. Some people dislike the chattering of the hard disk as Superfetch does its thing. If you're one of them, you can disable Superfetch in the Services console as I show in the accompanying screenshot gallery.
  • Windows Search is, for my money, Vista's killer feature. For most people, it really is a time-saver. But if you don't use it, or if you prefer a different indexing tool, you can disable it, or at least limit the amount of indexing it does. Doing so can reclaim a significant amount of RAM and disk space. I'll offer advice on the best way to use and manage Windows Search in next week's installment of this series.
  • Windows Defender is Microsoft's anti-spyware solution, which is enabled by default in every copy of Windows Vista. It runs as a service and can be particularly annoying when it does its daily scans for potentially unwanted software. To shut it down completely, open the Services console (Services.msc) and set the Windows Defender service startup type to Disabled. In my opinion, a better option is to tone down its aggressive scanning behavior: Open Windows Defender, click Tools, click Options, and then clear the Automatically scan my computer checkbox.

And that's it. In my experience, those are the only three built-in services that have a measurable impact on performance. If someone tries to talk you into disabling a bunch of other services, ask them what you stand to gain. I'll bet they can't tell you.

Topics: Operating Systems, Microsoft, Software, Windows

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

152 comments
Log in or register to join the discussion
  • Have you benchmarked the performance differences ...

    ... that you see when you disable Superfetch, Windows Defender and Windows Search? Last time I benchmarked a system with and without Windows Defender I saw no difference (outside of statistical 'noise').

    I'm not saying that you can't tune Vista to consume less RAM or to thrash the drives less, but on systems with 1GB+ of RAM it's hard to see all that fine tuning having any real effect when it comes down to benchmarking or FPS in your favorite game.

    Just wondering if you have any data either way?
    Adrian Kingsley-Hughes
    • Yes, I have

      And as I mentioned on the first page I see no effect on performance on an otherwise healthy system. In fact, disabling Superfetch typically causes apps to open a tiny bit slower, but not enough to make a big difference.

      The only reason to disable Superfetch, IMO, is if you have a noisy hard drive and the chattering bothers you when it does its info gathering and disk writing.

      Likewise, under normal circumstances the Windows Search service has no measurable effect on performance because of the way it operates. For some people in specific circumstances, it can have unwanted effects (see Tim Anderson's posts on his experiences). I'll address this topic next week.

      As for Windows Defender, I do notice a difference in performance when it is doing its full-file-system scans, which is why I disable those.
      Ed Bott
      • don't disable Defender, set it for weekly scanning

        Instead disabling it, it's better to change the setting from daily to weekly.
        qmlscycrajg
  • Had problems with HP printer drivers

    I have an all-in-one HP network printer I use at home that requires all sorts of drivers to be loaded to print, scan, fax, or OCR. I have several PCs/Notebooks at home that I loaded the drivers on that I had no problems with but after I bought a new main PC and I loaded their software I found I was having problems where my memory was being eaten up over time.

    After doing a fair amount of research I found the issue was with a service created by the printer software. The service was needed for scaning with the printer but how often did I need to do that? The pain was that it wouldn't just let me disable the service. It would give me a message something to the effect I wasn't allowed to do that. It took quite a bit of additional research before I found out what I needed to do to disable it.

    Once I was able to disable it helped tremendously with the machine's performance. The odd thing was if I needed to scan something HP would automatically start the service up.

    This points to another problem with third party software. Why make something a service that doesn't need to be a service. Yeah, it will save a few seconds on start up but other than that many times it serves no real purpose. I think some software providers cause a lot of problems by creating something as a service that doesn't need to be a service. It's no wonder you need all that memory for modern operating systems. Everyone wants their software to live in RAM rather than on disk.
    gmclean
    • Amen brother!

      I totally agree about there being too many third-party services that don't really need to be services.

      I've had similar problems with HP all-in-one drivers. My system boot times drop significantly after installing their drivers and system shut down often pops up an error message saying HPxxxx is not responding. Why does HP always need to have half a dozen glitchy services running for their all-in-ones? Why are they so poorly written? I wonder if part of the trouble comes from it being a network printer.
      BillDem
    • ALSO HAD PROBLEMS WITH hp PRINTER DRIVER

      I also had problems with HP's Windows Vista drivers for their HP PSC 1510 All-in-one printer. My solution: uninstalled their drivers. Windows Vista has its own drivers for that machine, so everything work mostly OK now.
      andrebranchaud
    • To many unneded services

      Over the years, on several forums, I've seen many peoples asking:
      "How do I run programm X or accessory Y as a service?"
      The usual answer was that you don't need to run it as a service or that there would be no adventages of doing so, or even that it will cause some problems or loss in performance. Then the original poster to reply that he "needed" to run it as a service, usualy assuming that he would get some mythical performance gain. Then, often, after they found a way to do it, they will come back complaining about some strange problem with the application now running as a service... Often with problems that they where told will appen if that application was ran as a service.

      Bottom line is that some, to many, users WANT accessories and aplets to be run as services.
      Kualinar
    • HP printer drivers

      in my experience, do not ever use the installer to install hp drivers. whenever possible, i find the driver folder and install from there. hp software sucks.
      g_keramidas
      • HP software

        Amen to that; Also have PSC1510 (Great printer/scanner) that all of a sudden lost its identity under Printer - scanners in Control Panel. No amount of uninstalling and reinstalling of HP drivers would get the scanner recognized. Finally had to do a fresh intall of XP. HP support of course would not help except for a hefty fee.
        lloyd_j1
  • Don't Bother Fixing Services, Vista Is Always Slow

    In regards to Ed Bott's suggestion on turning off the search service, not a bad idea. I remember when Microsoft used to call this useless service "find fast". If Ed Bott is right and search is Vista's killer feature; then it is easy to see why Vista is struggling.

    Vista is just to bloated. To bad there isn't a bloatware service I can turn off! Now THAT really would be a Vista killer feature!
    chessmen
    • Not the same

      "Find fast" was a very old implementation. The new Windows Search service is superb.
      Ed Bott
      • Come on Ed...

        Find fast was a crappy service that would absolutly just hose your windows performance. I would always go in to Admin Tools and disable. Man, people would go, " I can't how much faster my system is running", and this is due to the indexing being turned off. If this and probably is the tool that "Search" is built on then disabling it will pick up performance IMHO. It's the same with Gaggle's indexing/searching tool, slows the @#)*(@*#ck out of your system cause it's indexing all the time. I like very much your articles on Vista performance tips/tricks. So true is the statement that so many out there just give unproven advise. Most it's due to them wanting to sell you a worthless product now that they've screwed up your system.
        FF
        fredfarkwater
    • Vista is slow on pirated copies due OEM bios emulation crack!

      Vista is slow on pirated copies due OEM bios emulation crack and compromized ISO
      qmlscycrajg
      • Pirate Vista Would Be Its Own Punishment!

        I would not run Vista even if it were free.

        Vista bloatware = Yuck!

        I am holding out for something better. If Windows 7 proves to be just as big a disappointment I will be forced to leave the Microsoft platform. Still, I can hope.

        Many businesses are doing the same, check out the link for Corporate America's Rejection of Vista:

        http://www.msnbc.msn.com/id/24596745/from/ET/
        chessmen
        • well...

          What are you using that is so much less bloated? And that does as much, as quickly, and can interface as well as Vista in so many situations? I'd love to know, because I've yet to find anything. Vista is leaps and bounds cooler than XP, it's sleaker than mac, and the search feature is so much better than finder's search (on Vista: tap the windows key and begin typing, and there's your documents, your programs, your email, etc, almost instantly. Even on old hardware)

          Corporate rejection doesn't matter what so ever to me. Companies need things that play nice together and that are safe while being mind numbingly easy to use. If Vista fails in one of those, or if it is perceived to not be a money making change, then it won't be implemented, so your suggestion that because companies aren't getting Vista means we shouldn't is stupid.
          evilkillerwhale
          • Please state factual statements...

            The link given about corp america rejecting Vista is an excellent one. I have XP, Vista and a MAC. I like them all but Mac is way more fun and looks better, Vista is a memory hog and cannot even operate correctly with real vendors and XP is about as good as Microsoft can get and it even has a fisher price look for you.

            The only reason most people like Vista your statement, "It's sleeker". Also, you seem to have never used a Mac except for in the store since your review is strictly from a Windows perpective still.
            ccd1977
      • Vista is slow on pirated copies due OEM bios emulation crack!

        Boy did you drink the Microsoft KoolAid! I have a friend that was running one of those copies...and believed that crap...so he bought a retail ultimate copy, formated and reloaded...and found he still had the EXACT SAME PROBLEMS.

        PS if you don't get the KoolAid reference, google KoolAid and cults.
        alabasterdragon
    • Here we go again...

      ...with the ever returning claim "Vista is slow", and again (as nearly always) without any facts to back that up.

      As a software developer, i have to use both systems on my machines. I'm using real performance hogs (i.e. Visual Studio, VMWare Workstation etc), and often lots of instances of those at the same time.

      Under these circumstances, performance feels noticably better under Vista - the system simply reacts smoother when i switch between the diffenent applications.

      That said, there is one thing that can lead people to the impression of Vista being slow, from my experience, and that's Vista's out of the box experience. When you set up a new Vista System and copy all your personal files onto the new machine, Vista sometimes is slow for the first few hours, especially if your system and data reside on the same disk. The reason is simple: At the same time, Windows Search needs to index all your files, Superfetch has to gather all the information it needs to work well, and new programs are installed to disk, giving Windows Defender lots of things to check. Adding to that, Windows Search works in a very low priority mode while you actually work with your machine, so it can take long until all files are indexed, which keeps your disk clicking.

      There is a simple solution to that problem: When you're done installing your programs and have copied your personal files onto the system, don't turn it off but leave it running for two or three hours. When you don't use your PC, Windows Search switches to high speed indexing mode and finishes it's work fast. Once you're done indexing, activity returns to a normal level, and you can live happily ever after.

      and btw: Windows Search is the feature i always mention first when asked what i like about Vista...
      cgdams
      • Slower but only on some things

        The only places I've noticed a significant slow down between Vista and XP are high end games and media encoding. Everything else runs about the same.
        BillDem
        • What encoding software are you using?

          Since i'm not a gamer and the few games i do play are old enough to run fine under XP and Vista, i can't say anything about games, but i wonder why media encoding should be slower. In my personal experience, there's no real difference. What software do you use that runs slower under Vista?
          cgdams