Vienna Symphonic Library Forum
Forum Statistics

185,232 users have contributed to 42,388 threads and 255,459 posts.

In the past 24 hours, we have 5 new thread(s), 19 new post(s) and 42 new user(s).

  • [Vista] MMCSS: Network vs ASIO

    After I had my problems in Vista64 with my gigabit adapter apparently working as a 100 Mbps one, I found some interesting articles about "Netowrk Throttling", a technique developed by Microsoft to hard-limit the bandwidth for processes using Gigabit networks when other concurring processes involve audio, video and multimedia resources.

    I'm sorry for the double post, but I think it could be interesting for everybody, so I decided to start a new topic on this topic.

    First of all: what is Network Throttling?

    Mark Russinovich, Microsoft Fellow, explained that network performance was hard-coded to cap at 10,000 packets per second if any MMCSS-enabled application came on (apparently even if no audio or video is being played) and demanded CPU priority.  The hard-coded rate limit essentially limits network performance to around 15 MB/sec (megabytes per second) because 1500 bytes per packet times 10,000 packets equals 15 million bytes per second.  15 MB/sec works out to be 120 mbps (megabits per second) and most 10/100 networks top out around 90 mbps while most broadband connections are capped to 1.5 mbps.  Even most so-called gigabit NAS (Network Attached Storage) devices have a performance cap of around 120 mbps so very few people will even notice the MMCSS induced throttling in the first place.

    And now, some articles and solutions to limit or completely get rid of the Network Throttling effect.

    "Playing music severely degrades network transfer performance in Vista"

    http://blogs.zdnet.com/hardware/?p=702&tag=rbxccnbzd1

    About Netowrk Throttling and Multimedia Class Scheduler Service (MMCSS)

    http://blogs.zdnet.com/Ou/?p=711

    How to manage Network Throttling Index

    http://www.vistarevisited.com/2008/05/24/how-to-improve-network-performance-in-windows-vista/

    How to disable Multimedia Class Scheduler Service

    http://forums.nvidia.com/index.php?showtopic=36178&st=0&p=332216&#entry332216

    Hope this can help.

    Luigi.


  • ...and, obviously, the official source! [;)]

    How to use the throttling mechanism to control network performance in Windows Vista

    http://support.microsoft.com/kb/948066/en-us

    Luigi.


  • last edited
    last edited

    I found more interesting details about ASIO and MMCSS (MumtiMedia Class Scheduler Service).

    If you try to search for these two keywords, you will find many pages saying that it's a benefit to have a MMCSS-enabled ASIO driver (this depends on the manufacturer). For example, I recently bought an RME HDSPe AIO and its driver is not only Vista-ready, but also MMCSS compatible, as you can see in THIS PICTURE.

    Now, the problem with MMCSS is that it benefits MMCSS applications, but it damages network bandwidth, reducing the Gigabit to a simple 100Mbps.

    For this reason it's perfectly understandable that with applications like Vienna Ensemble we face two conflicting aspects: the audio streaming vs the network streaming.

    My experiments so far demonstrate that it's preferable to DEACTIVATE the MMCSS function in your soundcard's ASIO driver, because it can conflict with the network transmission.

    This is why I was affected by clicks and pops during playback, while MMCSS for my RME was enabled.

    I tried to deactivate it and Cubase can playback with the following results:

    • 60 simultaneous tracks via Vienna Ensemble
    • the ASIO meter is around 10-15%
    • the network bandwidth is around 25%
    • 256 samples ASIO latency
    • x1 or x2 settings produce the same results (x0 introduces many clicks)

    I have to experiment more, but if your souncard's ASIO driver has the possibility to disable the MMCSS compatibility, it's not necessary to hack the Windows Registry (as I explained in my first post), simply because, by its nature, the ASIO driver doesn't allow any throttling of the network.

    Luigi.


  •  thanks for sharing your research - we also have been victim of this strange behaviour, though i didn't observe a fallback to 100 Mbit but *only* severe limitation on the network throughput.

    mark is one of the few people really deserving the title *evangelist* and co-founder of the legendary sysinternals, but i have not found any straight forward solution for this problem so far - ,your solution depending on the audio device driver seems to be the best in the meantime.

    clearly another issue with those modern *ready for all and everything* operating systems of these days - near-realtime audio appears to be not on the focus, dynamic network buffer setting is another often related issue when working in a server based environment ...

    christian

     


    and remember: only a CRAY can run an endless loop in just three seconds.
  • Thanks for your appreciation Christian.

    Actually I'm still experimenting, but the things I found are a good starting point.

    I read somewhere that, in general, ASIO driver should not be affected by MMCSS, but if a manufacturer like RME add that option to his brand new Hammerfall model, I guess that many others will follow or are in the same path right now.

    I can't wait for VE Pro to be released, because I want to switch all my system from FX Teleport to it.

    I loved and used FXT for many years, but I'm encountering some problems with my new system (Vista64 + Cubase5).

    Luigi.