MacBook Rev. F Audio Skipping in Vista Analisys and Solution – Part 2

In my previous post I talked about reducing the DPC latency in order to prevent frequent audible clicks and audio skipping. The solution was to fix the CPU affinity in the KbdMgr.exe file. This resulted in great reduction of DPC latency of the system. 

The Problem

However, I noticed that every 50-60 seconds the DPC latency spiked to about 16ms. Since most professional audio software requires absolute low latency at all times, this DPC spikes will result in audible skips in those high-performance audio programs. I decided to look into this more closely.

latencyrevisited1

As it turns out (by the process of elimination) this spikes are caused by the Broadcom wireless driver. As seen in devince manager:

broadcom-devmgr1

Here are the driver details:

broadcom-driver

The reason why this spikes happen every 60 seconds or so is that, when enabled, Vista is actively scanning and detecting available wireless network and managing wireless network profile. The service responsible for this is called ‘WLAN AutoConfig Service’ which is similar to ‘Wireless Zero Configuration service’ in XP. 

Since this service is required in order for us to establish a wireless conection, we cannot just disable it. 

The Solution

The quickest thing is to create two cmd files and allow user to manually turn on and off the WLAN autoconfig feature. Here is what I have done. I created two files and placed them on my desktop. After establishing a wireless connection to my access point, I double-click on the ‘WlanAutocfgOff.cmd’. This turns off the WLAN autoconfig feature, but keeps me connected to my access point. In order to later be able to connect to it again (eg. after Windows restart), I just double-click on ‘WlanAutocfgOn.cmd’ and wait until I get connected. Then after establishing a wireless connection to my access point, I double-click on the ‘WlanAutocfgOff.cmd’to stop DPC spikes from happening again. 

File ‘WlanAutocfgOn.cmd’:

netsh wlan set autoconfig enabled=yes interface="Wireless Network Connection"

 
File ‘WlanAutocfgOff.cmd’:

netsh wlan set autoconfig enabled=no interface="Wireless Network Connection"

As you can see each file consists of single command.

After running ‘WlanAutocfgOff.cmd’, the DPC spikes will be gone (max latency ~1ms), and you’ll be able to use your pro audio app of choice without any skipping and stuttering.

latencyrevisited2

~ by Alexander Popovich on December 22, 2008.

16 Responses to “MacBook Rev. F Audio Skipping in Vista Analisys and Solution – Part 2”

  1. That worked 🙂

  2. Yeah.. uh the cmd’s dont seem to do the job.

    The only way I got it to work was manually opening a command prompt, and doing this:

    netsh [Enter]
    netsh>wlan [Enter]
    netsh wlan>set autoconfig enabled=no interface=”Wireless Network Connection”

    Auto configuration has been disabled on interface “Wireless Network Connection”

    netsh wlan>

    I haven’t found a way to get it working on either a .cmd or a batch file.

  3. Simple script, yet working very well. AWESOME!

    I hope Apple can address to this issue and come up with a fix on its BootCamp asap.

    Thanks!

  4. I’m going to throw a complete wobbly at you here guys 🙂 I am running Vista 64 on a normal designed-for-windows PC and I had this exact same stuttering problem. My latency checker shows low latency of about 100us or less normally but with spikes when the stuttering is occuring of over 64000us! The stuttering occurs at the same 60-second interval as you describe here but I do not have the same wireless adapter drivers as you. The script does not work with any of the named network adapters in my device manager as it says “there is no such wireless interface on this system” 😦 Any suggestions would be appreciated!

  5. Ok, in case any non-bootcamp person is curious or searching to fix the same issue I found that you can’t use this method on a PC as you are told you don’t have sufficient priviliges even if you’re the admin! Got round it by simply using a free program called ‘WLAN Optimizer’ that does the same as above apparently! Thanks for pointing me in the right direction anyway Mr Popovich! \o/

  6. Alex, thanks for the great tip!

    However, the red spiked on the latency graph still repeat for me even if I disable autoconfig feature. Though they seem to be less frequent. They get even less frequent if I disable the Bluetooth connection (but they still appear on the graph from time to time).

    I am on a late 2008 Macbook Pro 2.53 Ghz, with the same broadcom wireless adapter.

  7. The solution and the drivers mentioned in this post actually helped me — http://www.corenettech.com/blog/?p=30

    Now the latency graph is always in green/yellow zone. The red spikes only appear when I start doing something in Vista, like opening or closing windows. But the problem is definitely gone in the game I was playing (A Vampyre Story). No need to switch off wireless anymore.

  8. While both solutions improve the situation they are not perfect.

    1. KBDMGR.EXE needs to be KILLed, because even when setting its affinity to CPU1 it produces dropouts with low latency professional audio applications.

    2. Microsoft published new Broadcom drivers via Update Catalog that fix the DPC Latency spikes AND finally allows the Macbook WLAN to connect at full 300 mbit/s.

    3. The NVidia driver causes extreme DPC latency spikes by its dynamic clock-rate switching and once it finally settles to “2D Mode” its performance is too low for professional audio DAW applications and leads to regular high DPC latencies.

    There are two solutions to this:

    a) Use the VGA Standard Drivers. Easy to setup, but rather inconvenient, since you not only forfeit Aero, but also all NVidia video playback accelerations.

    b) Use RIVATUNER to “Force Performance Level” and thus fix the Nvidia graphic at either “Low Power 3D” (suffient for 2D applications) or “Performance 3D” (usually only needed for gaming, eats more power).

    For a full Guide look here: http://www.rme-audio.de/forum/viewtopic.php?id=4320

  9. ey alex, thank you so much! now everything is working as it should!

    regards from Gibraltar

  10. in
    http://catalog.update.microsoft.com/v7/site/Home.aspx
    I was able to find updated drivers for audio, wireless, and video for my macbook. This also helped with reducing DPC latency!

  11. Thanks dude! Worked a treat 🙂

  12. I love your site!

    _____________________
    Experiencing a slow PC recently? Fix it now!

  13. I love your site! 🙂

    _____________________
    Experiencing a slow PC recently? Fix it now!

  14. I found the problem, the muti-touch trackpad update released by apple caused the latency problems. All you have to do uninstall and reinstall the boot camp drivers via the Leopard install DVD and this time don’t install the multi-touch trackpad update when prompted by the apple software update and everything should be fine.

  15. I had similar problem but in my case the cpu usage was continuous, not spiked. 90% cpu cycles were shared between hardware interrupts and DPCs. Surprisingly, I was able to solve the problem by moving the pc casing away from corner and rotating the antenna of the wlan card.

  16. 商品コード tg8421010。緑 ズボン http://www.besttributebands.com/content/css/charset/20141202224031-e7b791-e382bae3839ce383b3-zqgw.html

Leave a comment