TechEd 2007: Vista's Priorities Now Favor Media Player, Russinovich Demos

By Scott M. Fulton, III, BetaNews

June 7, 2007, 2:56 PM

ORLANDO - Perhaps the closest thing to a rock star you find at a technology conference is a guy whose talks are so good, that the same attendees will attend their encore performances. If anyone makes a list of three "rock stars" at TechEd, one of them would have to be Mark Russinovich, the former SysInternals security engineer, now a Technical Fellow with Microsoft.

Russinovich's "Kernel Changes" talks are among the "must see" items on attendees' schedules, and is often the only place where you can find them walking up to the podium to shake the presenter's hand and introduce themselves...before the session begins. Each time, Russinovich mixes the talk up a bit. This time around, he used virtual XP and Vista sessions to demonstrate an interesting new set of priorities on the part of the operating system, as provided by Multimedia Class Scheduler Service.

XP users are familiar with the situation where the playback of media files is slowed down when the CPU comes under stress by other processes. This happens to me all the time: I'm transcribing an audio file, I'm running Word and my photo editor and perhaps Visual Studio, and I have to hit Stop and Play pretty frequently. Each time I do, the playback gets a little bit slower...and slower...and slo...

A CPU Performance Monitor heuristic in Vista shows where a period of increased CPU stress bumps the Media Player thread priority up high.
With a musical demonstration, Mark showed a Vista CPU Performance Monitor graph (another of the many performance tools people don't realize it has), depicting the priority level Vista continually gives to the Media Player 11 thread while the CPU is under stress.

When one of Russinovich's many tools (many have compared him to Peter Norton in the late '70s) places artificial stress on the CPU, instead of slowing down the music playback...MMCSS kicks in and boosts MP11 to priority level 21 or thereabouts.

What slows down? The mouse pointer, curiously enough. Sure, your input gets a little bogged down, but you can still tap to the beat. In fairness, MMCSS is a vitally necessary service in the wake of Windows Home Server, whose principal feature is the centralized storage and streaming of media. If the server's busy doing backups, you don't want the dance party going on in the basement to slow down.

More from Russinovich and the rest of TechEd 2007 throughout the week in BetaNews.

Add a Comment (11 Comments)

BetaNews reserves the right to remove any comment at any time for any reason. Please keep your responses appropriate and on topic. Foul language and personal attacks will not be tolerated.

Name (required):

E-mail (required):

Enter Your Comment:

By smallfoot

edited Jun 9, 2007 - 8:18 AM

Instead of reading this article, then one should get the stuff from the horse's mouth:

http://www.microsoft.com...istaKernel/default.aspx

Btw. the service is called Multimedia Class Scheduler Service (MMCSS) and not MCSS.

http://msdn2.microsoft.c...s/library/ms684247.aspx

Score: 0

By Hollywood__

posted Jun 8, 2007 - 4:32 PM

Why shouldn't it? 95% percent of America only uses thier computer for web surfing, IMing and organizing thier music collections.

Maybe doing thier taxes and typing up a Christmas letter and the occasional mailing labels.

Score: 0

By _jaz_

posted Jun 8, 2007 - 7:43 AM

I don't get the point. Is this a tryout to say "vista will be hard-realtime with multimedia"? I build, move files from folders, chat... even if I do a virus scan my music doesn't stop on windows! (and i have a 100ms latency only).
Of course, i have to say that i've had skips sometimes with video playback, for whatever reason. So *that* might improve, if there isn't another service that simply blocks processing...

Score: 0

By KingMotley

edited Jun 7, 2007 - 5:17 PM

Nice

Score: 0

By PC_Tool

edited Jun 7, 2007 - 3:03 PM

What version of Vista was this demonstrated on?

I'd be very disappointed to see this behaviour in Vista Business edition.

Is it possible to alter this "automatic" priority change, give it to another service, or stop it altogether?

Score: 0

By KingMotley

posted Jun 7, 2007 - 5:19 PM

Why? If you are playing a video on a server (Say SQL or Exchange), those tasks aren't really all that time sensitive. So a query takes 10% longer, big deal. Not that you should be playing videos on a production server anyhow.

Score: 0

By PC_Tool

posted Jun 7, 2007 - 5:23 PM

Not that you should be playing videos on a production server anyhow.

Which is *exactly* my point, unless you're a production house.

There's no reason for that to exist in VBE. At the very least it shouldn't be the default behaviour.

Score: 0

By asellus

posted Jun 9, 2007 - 11:06 AM

This is supposed to be in that Windows Home Server. So this is quite important really. And that's why mouse pointer get slow, after all, who use mouse in Home server?

Score: 0

By billweh

edited Jun 7, 2007 - 5:45 PM

Or your a developer @ 2am and listening to a bunch of MP3's to try and stay awake.

You are in the middle of a hairy build or uploading files to Timbuktu and just want to go home and your system suddenly starts giving a higher priority to your audio than the real work.

I also wonder if this only works with WMP or if it's anything that's using Media Services?

Score: 0

By flake

posted Jun 7, 2007 - 11:57 PM

What a motly bunch we have here ;) Let's gently decend from the stratosphere back to earth now shall we?

Many unneeded services are a fact of life with windows, ever since NT 5.0 showed up. Learning how to tune these things is what seperates the men from the boys in the IT department

- How 'bout -

net stop mcss

- Or for a more hands off approch -

You would obviously be controling via group policy... No? ;)

Why not b**** about something more egregious, such as the themes service on your XP boxes? Or maybe that lame sidebar sucking up 70MB of your RAM? Surely it must be adding at least half a second to your build times?

Ammusingly, except for the compiling, none of these whatif's are particularly CPU dependent but are rather Network or I/O constrained.

Really, any project that takes more than a minute or two to build should be done on something other than a developer's workstation. I mean seriously now, you can build a modern, bloated Linux kernal in well under 5 min on most modern hardware. Most of the time, that'll be constrained by the disk as well. Sure there's more complicated stuff, but I highly doubt you'll find it in the average IT shop.

...and If *I* was that developer laboring away at 2AM... I'd damn sure be pissed off if my music or training video was skipping and could really give a rats a** about 2 more seconds on a build

Score: 0

By PC_Tool

posted Jun 8, 2007 - 8:56 AM

lmao..

One guys asks if there's a way to stop this easily, or if it's even included in VBE, and suddenly we're in the "stratosphere" here, eh?

Let's climb down off that high horse there, buddy, mmmkay?

Score: 0