Single page Print

Nvidia brings Optimus switchable graphics to notebooks

Switching GPUs gets seamless and smarter

Switchable graphics may not be one of the most exciting new technologies to hit the notebook space in the last few years, but for PC enthusiasts, I think it's easily one of the most important. Enthusiasts are a notoriously demanding lot, you see. We crave performance, and most of us are gamers who simply can't get by with a weak-sauce integrated graphics processor, especially if it's an Intel Graphics Media Accelerator. At the same time, we want our notebooks to be thin and light and offer exceptional battery life—requirements that generally favor integrated graphics solutions, and GMAs in particular. Following tech writing's tradition of lazy automotive analogies, that's sort of like asking for the power of at least a turbo-charged V6 inside a car that offers Prius-like fuel economy.

Interestingly, the solution to this dilemma resides within the Prius itself—specifically, the hybrid nature of its drivetrain, which combats noxious emissions with a 60kW electric motor complemented by a 1.8-liter, four-cylinder gasoline engine. When cruising around town at relatively low speeds, the Prius gets by on its clean-running electric motor. Bury the gas pedal, and the secondary engine springs into action, armed with enough horsepower to bring Toyota's eco-wagon up to highway speeds.

Emissions aren't an issue for notebooks, but the hybrid approach can be applied to conserve battery life. Intel's Graphics Media Accelerators are plenty capable of handling basic desktop tasks, web surfing, and even video playback, all while sipping battery power sparingly. They're the perfect engines for puttering around town. A considerably more potent discrete GPU must roar to life when users demand 3D performance, though. There are plenty of discrete GPUs from which to choose, starting with modest solutions more akin to that turbo-charged V6 and reaching all the way up to obscenely powerful feats of engineering like the thousand-horsepower W16 that rumbles inside the Bugatti Veyron. These discrete GPUs may draw considerably more power than an Intel IGP, but if they're only called upon when needed, battery life will only suffer when there's good reason.

The first stab at hybrid notebook graphics came in the form of Sony's Vaio SZ-110B, whose primary graphics processor could be controlled using a hardware switch just above the keyboard. A reboot was required to complete the switch from the system's integrated GMA 950 to the discrete GeForce Go 7400, so graphics horsepower wasn't exactly available on demand. Still, the Vaio provided the market with its first taste of switchable graphics—and with proof that good battery life and competent graphics performance could coexist in a thin-and-light notebook.

Fortunately, switchable graphics' second coming proved far more common and easier to use. Rather than relying on physical switches, recent implementations are capable of changing the primary graphics adapter via software. Rebooting isn't required when switching from discrete to integrated or vice versa, although you will have to endure a few seconds of screen flickering as display duties are migrated from one adapter to the other. You'll also have to close any so-called blocking applications that are tying up the graphics adapter with DirectX calls.

This contemporary switchable setup comes much closer to delivering power on demand, but only after a pause and with a few strings attached. One of those strings: the user must know that reserve power is lying in wait. Amazingly, Nvidia claims, a lot of folks who buy switchable notebooks don't have a clue. Among those that do, few can be bothered to switch manually. Nvidia tells us it conducted a survey of 10,000 owners of notebooks sporting switchable graphics and found that only 1% actively switched back and forth between graphics adapters. Nvidia points out that those surveyed were predominantly mainstream users rather than PC enthusiasts, so it seems likely that few had any exposure to switchable graphics outside of a likely misleading sales pitch from a pimply teenager at their local Best Buy. Nevertheless, the fact remains that current switchable graphics implementations aren't truly seamless. Ideally, a hybrid graphics subsystem should deliver power on demand automatically and without pause or restriction, which is what Nvidia claims it's achieved with its next generation of switchable graphics, dubbed Optimus.

Switchable graphics today
To understand what makes Optimus unique, we have to dig a little deeper into how current switchable graphics implementations work. On the hardware front, such systems are equipped with an integrated graphics processor (or IGP) in the chipset or CPU, along with a discrete GPU. The GPU hooks into the system via PCI Express, and it also must be connected to the display outputs, which are shared with the IGP. Sharing is facilitated by high-performance hardware multiplexers, otherwise known as muxes, that feature inputs for each graphics adapter, a single output, and a control line that tells the multiplexer which input to pass through to the display.

According to Nvidia, a minimum of two muxes are required to connect all the necessary lines for each display output. With the average switchable graphics notebook featuring three video outs—the LVDS LCD interface, an HDMI output, and an old-school VGA port—that's at least six multiplexers, plus all the extra traces required to connect the auxiliary GPU.

Switchable graphics block diagram. Source: Nvidia

While mux control lines can be activated by software, the act of switching graphics adapters on the fly requires a considerable amount of driver cooperation, especially since this approach was conceived at a time when Microsoft's reigning operating system, Windows Vista, only played nicely with one graphics adapter at a time. To get switchable graphics working in this environment, Nvidia had to create an "uber" display driver featuring an interposter sitting between the operating system and the Nvidia and Intel display drivers. Vista communicates with this uber driver via standard APIs, but a custom API jointly developed by Nvidia and Intel is used to interface the GMA driver with Nvidia's interposter. The level of coordination required for this setup was challenging, Nvidia asserts, and the need to ensure compatibility apparently slowed driver updates.