How AMD’s Dynamic Switchable Graphics Works

One of the things we discussed with AMD was the technical details of their dynamic switchable graphics. At a high level, things might appear similar to NVIDIA’s Optimus, but dig a little deeper and you start to find differences. To recap how switchable graphics works, let’s start at the top.

The original switchable graphics technologies used the IGP and dedicated GPU as discrete devices. Both were connected to the necessary display outputs, with some hardware muxes that could select the active device. This requires more cost in the motherboard, and switching results in a blanking of the display as one device is deactivated and the other comes online. In the earliest implementations, you had to reboot when switching, and the system would start with either the IGP or dGPU active. Later implementations moved to software controlled muxes and dynamic switching, which required Windows Vista to work properly (since the IGP driver would unload, the GPU driver would start, and then the display content would activate on the GPU).

NVIDIA’s Optimus changes things quite a bit, as there are no longer any muxes. The display ports are always linked to the IGP output, and NVIDIA’s drivers simply look for calls to applications that the dedicated GPU can help accelerate. When they detect such an application—and the user can add their own custom apps—the drivers wake up the GPU and send it the rendering commands. The GPU does all of the necessary work, and then the result is copied directly into the IGP framebuffer, omitting any flickering or other undesirable effects as the IGP is constantly connected to the display output. The GPU can wake up in a fraction of a second, and when it’s no longer needed it will power down completely. NVIDIA even demonstrated this by removing the dGPU from a test system while it was powered on. The only catch is that the drivers need to have some knowledge of the applications/games in order to know when to use the GPU.

The details of AMD’s Dynamic Switchable Graphics are similar in practice to Optimus, but with a few differences. First, AMD always has both the IGP and GPU driver loaded, with a proxy driver funneling commands to the appropriate GPU. Where NVIDIA is able to completely power off the GPU under Optimus, AMD has modified their GPUs so that the PCI-E bus is isolated from the rest of the chip. Now when the GPU isn’t needed, everything powers down except for that PCI-E connection, so Windows doesn’t try to load/unload the GPU driver. The PCI-E link state gets retained, and a small amount (around 50mW) is needed to keep the PCI-E state active, but as far as Windows knows the GPU is still ready and waiting for input. AMD also informed us that their new GPUs use link adapter mode instead of multi adapter mode, and that this plays a role in their dynamic switchable graphics, but we didn’t receive any additional details on this subject.

As far as getting content from the dGPU to the display, the IGP always maintains a connection to the display ports, and it appears AMD’s drivers copy data over the PCI-E bus to the IGP framebuffer, similar to Optimus. Where things get interesting is that there are no muxes in AMD’s dynamic switchable graphics implementations, but there is still an option to fall back to manual switching. For this mode, AMD is able to use the display output ports of the Intel IGP, so their GPU doesn’t need separate output ports (e.g. with muxes). With the VAIO C, both dynamic and manual switching are supported, and you can set the mode as appropriate. Here are some static shots of the relevant AMD Catalyst Control Center screens.

In terms of the drivers, right now you get a single large driver package that includes a proxy driver, an Intel IGP driver, and AMD’s GPU driver all rolled into one. Long-term, AMD says they have plans to make their GPU driver fully independent from Intel’s IGP driver. They say this will only require some packaging updates and that they should make this change some time in 2012, but for now they continue to offer a monolithic driver package. OEMs apparently get this driver on a monthly basis (or can at least request it), but it’s up to the OEMs to validate the driver for their platform and release it to the public.

In the case of non-switchable graphics, AMD has a monthly driver update that we refer to as “reference drivers” that is publicly available. At present, you download a utility that will check your laptop GPU ID to see if the laptop is officially supported by the reference driver. Right now certain OEMs like to maintain control of the drivers so the AMD utility will refuse to download the full driver suite. In such cases, users have to wait for the manufacturers to roll out updates (Sony, Toshiba, and Panasonic all fall into this category). In the past, we have been able to download the reference driver using a “sanctioned” laptop (e.g. something from Acer), and we were able to install the reference driver on a non-sanctioned laptop. However, this does not work with switchable graphics laptops; you need the monolithic driver package for such systems.

That takes care of the high-level overview of how AMD’s Dynamic Switchable Graphics works, as well as a few other related items. The details are a little light, but that at least gives us an introduction to AMD’s current switchable graphics solutions. With the hardware and software discussions out of the way, let’s turn to our gaming results first and see how the two solutions and GPUs compare in performance as well as compatibility.

Switchable Graphics - Meet the Contenders Medium Detail Gaming Comparison
Comments Locked

91 Comments

View All Comments

  • fynamo - Wednesday, September 21, 2011 - link

    Tried all of the driver tweaks, forced browsers hw accel, all to no avail. Firefox and Chrome both will use only IGP despite forcing them in NVIDIA control panel.

    In reality, most people aren't going to notice CSS3 sluggishness because very few sites actually employ CSS3 currently. But as a developer of bleeding-edge apps that are indeed using CSS3, and which we are also developing for mobile, I am HIGHLY sensitive to performance.

    As stated - on Optimus, css3 performance sucks. On AMD, css3 performance is orders of magnitude better.

    The other issue is with resizing and dragging windows. I noticed that the "SYSTEM" process in Task Manager (Windows 7 64) spikes to use a single full CPU core while resizing or dragging a window, and the drag / move animation slows to ~10 FPS or less. I did NOT have this problem on my "old" Radeon 3670 machine.

    The same tests on a desktop, also with Windows 7 64 and with a Radeon 6850 (no IGP), show liquid-smooth and no CPU spike.

    I've tested multiple Optimus systems and all have this problem, but my tests with AMD systems have yielded good results each time.
  • Spazweasel - Tuesday, September 20, 2011 - link

    When people ask why I stick with nVidia graphics cards, this article sums up all my reasons well:

    1. nVidia for many years has done a much better job of delivering timely driver updates, better driver stability, and multi-GPU scaling. SLI "just works". Crossfire is a crapshoot.
    2. I have never had a problem with a game that was related to an nVidia driver. I cannot say the same of AMD.
    3. AMD certainly has somewhat faster hardware at a given price point, but that doesn't matter if the games crash, if the driver UI sucks, or they can't get their partners to deliver what few driver updates there are.
    4. I have many friends and acquaintances in the gaming industry. Without exception, they have reported that nVidia is much, much easier to deal with and is more responsive to the concerns of game developers than AMD. nVidia will often give you some of their own engineer-time to help you work through a problem, while AMD's response is "RTFM, go away, stop bothering us". This is likely why games have fewer driver-related issues upon initial release with nVidia than AMD; nVidia will help you before your game is on the market (and include the necessary changes to their drivers in advance of the game's release), while AMD is unresponsive during development, and often well into retail.

    Secondarily, never buy a Sony computing product. You'd better be happy with the drivers that come with it, because you're not going to see new ones. Over the years I've had two laptops made by Sony, and both were orphaned within 18 months of purchase (driver updates on OSs which were current when the product was new stopped, and newer OSs never got a driver at all). Sony is terrible at ongoing driver support, regardless of what the hardware category (video, audio, input device, peripheral connection hardware) is. I've come to the conclusion that there is nothing software-related which Sony can get right, on either a technical nor ethical basis, and that planned obsolescence through early termination of software support is explicitly part of their business strategy.

    My most recent AMD experience is a 4870, which was (and is) fast, loud, and unstable. I've thought about a 6570 for an HTPC, mostly for thermal reasons and packaging reasons (if you want a quiet, cool video card capable of moderate detail-level gaming to feed a 720p TV that is low-profile, you're pretty much limited to AMD), so it's about time for me to see if anything's changed. In the meantime, for my heavy-duty gaming machine, it's nVidia and will remain so until AMD's driver team gets its act together, regardless of how nice AMD's hardware is. Seriously, the hardware team at AMD needs to put the beat-down on the Catalyst guys; the driver team is making everyone look bad.
  • tecknurd - Wednesday, September 21, 2011 - link

    I completely agree. ATI never wrote reliable and stable drivers. Also they gave me a run-around by saying to update to the latest drivers which I did at the time, but the graphic drivers still crashed my setup. Now AMD owns ATI and they have the same faults as ATI. People say that Radeon graphics is good, but this article shows they do not care for reliability and stability which are require for GUI.

    I switched to nVidia because of poor driver support from ATI. Also poor driver support in Linux for Radeon graphics. IMHO, the open source community does a better job writing drivers for Radeon graphics compared to AMD.

    I would buy AMD for their CPU but not for their graphics.
  • chinedooo - Wednesday, September 21, 2011 - link

    haha the dv6t with a 6770m would kill all these other laptops. And it switches perfectly too. I get like 6-7 hrs web browsing on mine.
  • chinedooo - Wednesday, September 21, 2011 - link

    Another difference between the two is the vram. the 6700 series uses gddr5. makes a world of difference.
  • Hrel - Wednesday, September 21, 2011 - link

    "and the user can add their own custom apps". Does this mean we can pick and choose if the dgpu is on or off on a per app basis? I spoke to Nvidia and they said you CAN do that in the Nvidia control panel. I just don't know how. I have the Clevo P151HM laptop, so maybe the option isn't even there on mine. I'd still like you guys to tell us how to do this, assuming it's possible.

    Side note, I'm annoyed this laptop only accepts drivers from Clevo, and not from Nvidia.
  • tanjo - Wednesday, September 21, 2011 - link

    3 years and it's still not working properly???

    The best solution is to add ultra low power 2D power state on dGPUs.
  • orangpelupa - Wednesday, September 21, 2011 - link

    actually you can install GENERIC driver from ATi to update the laptop with switchable graphic.

    just dont use the auto detect app from ATi. it useless. always decline to download the driver....

    i have been long time using Acer with Intel + Radeon HD 5650. i can always update the ATi driver using generic from ati website.
    for acer i just install the 11-8_mobility_vista_win7_64_dd_ccc.exe

    but if the installer decline to install, you can update while using modded inf
    http://game.bramantya.org/modded-inf-ati-mobility-... (sorry have not uploaded the 11.8 modded inf)

    if still failed, can update manually from device manager.

    just make sure before doing any update with "generic" driver is graphic switched to dGPU mode from the shortcut in right click menu in desktop.

    that updating generic, work old laptop with "screen flicker when switch graphic". so i dont know if its work with the new dynamic switching ATi.
    Anyone with this new DYNAMIC switching want to try?
  • my2cents - Wednesday, September 21, 2011 - link

    Just my 2 cents. I was searching around web and found site, some blog, where some dude is creating ATI + Intel switchable graphics. I own myself a Vaio VPC-SA2S9R. Just google "leshcat_dot_blogspot_dot_com". Works good so far.
  • RenderB - Wednesday, September 21, 2011 - link

    Sadly the nvidia tool isn't doing much better. Have the same optimus config as tested, but from asus. The auto detect will always tell me to go get drivers from clearcube.

Log in

Don't have an account? Sign up now