Original Link: http://www.anandtech.com/show/6243/amds-enduro-switchable-graphics-levels-up
AMD’s Enduro Switchable Graphics Levels Upby Jarred Walton on September 6, 2012 3:00 AM EST
A couple weeks back, I contacted AMD to let them know I was working on a notebook review—a Clevo P170EM from AVADirect with HD 7970M graphics. Much to my surprise, when I received the notebook I discovered it used AMD’s Dynamic Switchable Graphics, now rebranded as Enduro. It has been just over a year since my last look at the technology, where things were so bad that I felt most users would be better off if they had only discrete AMD GPUs and no switchable graphics—or they could simply buy NVIDIA Optimus enabled laptops. The short story is that my initial experience with the P170EM was largely the same, only the lack of driver updates was even more damning when looking at a notebook sporting such a high-end GPU. What could be done? AMD scheduled a meeting with me to go over the latest updates, and thankfully things aren’t quite so grim as I first thought.
First, let’s get everyone up to speed. Historically speaking, AMD/ATI has been on the forefront of switchable graphics technology. While the first laptop with switchable graphics tested at AnandTech used NVIDIA’s implementation (the ASUS UL80Vt), Radeon-based alternatives also existed in a similar time frame. The main problems with early switchable graphics solutions is that they required extra hardware on the manufacturer side (muxes), increasing cost, and more importantly you were generally locked in to getting graphics driver updates from the laptop OEM. NVIDIA addressed both problems when they launched Optimus in early 2010, and while there were certainly some teething pains the vast majority of users have been pleased with the result. Where did that leave AMD? Simply put: out of most laptops.
Was it because NVIDIA had superior technology, better drivers, or better marketing? I’d say yes to all three, and it has been painful to watch as the number of laptops with discrete GPUs (at least in the US) has largely shifted to being NVIDIA products. Up until now, if you wanted a laptop with a discrete GPU, the ability to switch off that GPU, and you wanted regular driver updates, your only viable option has been NVIDIA equipped laptops. Perhaps that’s why every major OEM (along with most smaller OEMs/ODMs) ships at least some of their laptops with NVIDIA’s Optimus Technology. With laptop sales now outpacing desktop sales, giving up so much ground to their competitor is a serious problem AMD needs to overcome.
I should note that AMD has other products that actually help get around our concerns with Enduro. The Llano and Trinity APUs for example offer integrated GPU that are as fast (faster in some cases) as discrete GPUs. If you’re looking for a good budget laptop that gets excellent battery life and you don’t want to deal with switchable graphics at all, Llano started the trend of providing a decent GPU with acceptable CPU performance and Trinity continues that trend. Even better: driver updates aren’t a problem as there’s only one AMD GPU to contend with. Trinity/Llano didn’t win any awards for pure performance, but in terms of bang for the buck and creating a well-rounded device, the APUs have proven successful. But we’re not going to worry about Trinity/Llano or other APUs; today’s focus is on discrete GPUs and switching between these high-power, high-performance GPUs and low-power, low-performance integrated graphics.
With that out of the way, let’s look at the history of AMD’s switchable graphics as well as where they intend to go in the near future.
Recap: AMD’s PowerXpress, aka Dynamic Switchable Graphics, aka Enduro
Getting back to the switchable graphics, AMD has gone through a variety of names over the years. Here’s AMD’s summary slide, which I’ll discuss in detail:
Originally introduced as PowerXpress back in 2008, the first AMD switchable graphics solutions were like that found later in the ASUS UL80Vt and similar laptops: you had to flip a switch, and in the first iterations you would then need to reboot the laptop so that the BIOS could disable the discrete GPU and activate the integrated GPU. It was messy and a bit inconvenient, and NVIDIA’s early studies showed that many users ended up not using the feature—they would either run on dGPU all the time or on iGPU all the time. Both AMD and NVIDIA had a second series of switchable graphics designs where the need to reboot was removed; the first Alienware M11x could switch GPUs in about 10-15 seconds, and the same was true of HP’s first ENVY laptops. These were using PowerXpress 2.0 and 3.0, and for most people the switching side was adequate: you’d run on dGPU when plugged in and switch to iGPU when on battery power.
Last year, AMD took a step forward with their switchable graphics by introducing PowerXpress 4.0, which also renamed the technology to Dynamic Switchable Graphics (DSG for short). I got a chance to do a head-to-head of the technology using a Sony VAIO C laptop provided by NVIDIA. You know a company is confident that they’re going to win a technology comparison when they’ll actually give you a competitor’s product. In some cases, DSG was just as good as Optimus: you could launch a supported game and never realize all the extra stuff happening in the background; unfortunately, there were several titles where it wasn’t quite as convenient as we would have liked, and OpenGL support from DSG was completely missing.
Step forward to early 2012 and we got another update to PowerXpress 5.0 (note that PowerXpress is now only used internally by AMD and hasn’t been their marketing name since before PX4.0) along with a rechristening: Dynamic Switchable Graphics was out and Enduro was in. If nothing else, at least it makes my job easier as Enduro is much more concise. There's also the fact that the GPUs are no longer "switching", as the iGPU is always running; now the dGPU is simply supplementing the iGPU when needed. Along with the name change, AMD added OpenGL and OpenCL support to the mix, and with their Zero Core Technology (which is also part of their 7000 series desktop GPUs—a case of mobile design influencing desktops) the need to keep a small portion of the chip alive (aka BACO: Bus Active Chip Off) was removed. OEMs could also ship with custom profiles for applications, so for example Dell might want all of their extra utilities to default to running on the iGPU.
Hopefully this problem goes away next month!
Other than those changes, the UI and driver updates situation on early Enduro solutions remains largely the same as with DSG/PX4.0—and that’s what I initially received with the Clevo P170EM, with drivers from around March 2012. A quick check at AMD’s site also let me know that there weren’t any new drivers available, as the P170EM wasn’t currently supported by the latest Mobility Catalyst drivers.
New for Mid-2012: “Enduro 5.5” Enhancements
When AMD created the Enduro brand, they were really almost where we wanted them. They had dynamic switching with support for most of the latest games and applications, and when it worked properly it would be difficult to tell if you were using an NVIDIA or an AMD dGPU. The problem was when things didn’t work and you had to go into the drivers, and there were several problems. OpenGL support was totally out, many of the latest games were also missing default profiles (and sometimes wouldn’t let you properly specify the correct GPU), the UI was obtrusive and sometimes hard to use (particularly for power users), and the drivers were dictated by the laptop manufacturers and were usually months old at launch and never updated.
While the UI seems like a minor thing to fix—I would have thought one or two months to improve the UI would have been sufficient—at least prior to the forthcoming update it remained largely unchanged. The lack of AMD-provided driver updates was really the major issue, because everything else could potentially be fixed with new drivers and you would never know. The other areas like OpenGL/OpenCL and support for various games/applications should improve over time as well, provided you can get drivers. That brings us to the upcoming Enduro release, scheduled to come out sometime this month or next. Officially it’s still just Enduro, but to help differentiate between the previous Enduro release and the upcoming release we’ll sometimes refer to the new version as “Enduro 5.5”.
The biggest news with the latest iteration of Enduro is that AMD is planning to make universal reference drivers available for all the Enduro laptops. It’s not clear precisely what that means, but potentially any laptop with Dynamic Switchable Graphics or later (e.g. PX4.0 and later) would be supported by AMD’s “reference” drivers. That’s huge, and if AMD can deliver it will assuage most of our concerns with their hardware/software. Hopefully none of the OEMs get bent out of shape or refuse to allow support, which is a problem we've seen in the past. We should see the first public release in the next month or two, and then another release somewhere in the November/December timeframe.
Besides the availability of driver updates, the UI also receives a much needed overhaul, providing both regular and power users all the options they’re likely to need as far as control of graphics switching is concerned. Open up the switchable graphics options and the top section remains largely the same, but the bottom now allows you to see all application profiles (or just the profiles for detected applications). There’s also a quick search option that works both on executable name and application/game name (e.g. HL2.exe or Half-Life 2 will both find the profile for Half-Life 2). From either list (recently used apps up top, or all apps at the bottom), you can set the GPU profile.
Where previously there were two settings (three if you count “Not Assigned”), there are now three options. As before, “Power saving” sets an application to run on the integrated graphics while “High performance” sets an application to run on the discrete GPU. The new third option is “Based on power source”, which does precisely what you’d expect: plug the laptop in and the apps with this setting will run on the discrete GPU; switch to battery power and they’ll run on the integrated graphics. For many users, everything could default to “Based on power source” and they would be happy, but certainly there will be times where you’re running on battery power but still want to use the dGPU and the drivers give you that option. Should things get squirrelly, you can also reset applications individually or globally to their default settings. It’s worth noting that the power state aware setting is something that NVIDIA currently does not implement, requiring manual intervention if you wish to override your normal settings—though how often people are using apps that require the dGPU while on battery power is something we could debate.
Besides the individual application profiles, AMD is also adding a new area to their drivers: Switchable Graphics Global Settings. This is something you could sort of get before with some laptops, but previously it involved changing from Dynamic Switchable Graphics to manual switching (i.e. switching based on power source) and then forcing the laptop into High Performance or Power Saving mode if you wanted to be low power while plugged in or high power while unplugged. That was clunky and at least in the case of the Sony VAIO C we tested it caused flickering similar to the old switchable graphics, with the dGPU drivers getting unloaded and iGPU drivers getting loaded (or vice versa), with some work behind the scenes copying context from one GPU to the other. It worked but it wasn’t elegant; perhaps more importantly, Microsoft doesn’t want anyone doing this with Windows 8 and thus new laptops won’t be able to get a Windows 8 sticker if they use this method of switching (which basically means no new laptops will do this). To make up for the loss of this functionality (which some people still prefer), AMD has added a new global settings section.
Unlike the individual application profiles, the global settings gives you four options each for Battery and Plugged In. The top two options are similar in most cases and will generally run most applications on the iGPU, and the same goes for the bottom two modes where you’ll run most apps on the dGPU. The difference is that “Force Power Saving GPU” will run all applications (regardless of what the custom profile says) on the iGPU, essentially disabling the dGPU completely. “Optimize Power Savings” in contrast will run all unknown or “Based on power source” applications on the iGPU while respecting the application profiles where they exist. “Optimize Performance” is sort of the reverse of that, running all “Based on power source” applications on the dGPU while leaving unknown applications on the iGPU. Finally, the “Maximize Performance” option runs all unknown and “Based on power source” applications on the dGPU—but applications specifically set to use the iGPU will continue to do so.
The reason for that last discrepancy (e.g. why you can’t simply run everything on the dGPU and forget about the iGPU) is that certain tools have to run on the iGPU. Intel’s drivers are one example—loading those up on the dGPU would cause problems. Intel’s WiDi is the only other I could find on my particular Clevo notebook. We were told that some of the laptop utilities like an overlay showing percentage of brightness, volume, etc. may also need to run on the iGPU. Besides the few applications that have to run on the iGPU, any applications that are set to Power Saving will continue to use the iGPU—and this makes sense as there are a lot of applications that can be set to run on iGPU/dGPU that have no need of higher performance GPU options (several anti-virus utilities come to mind, where they're starting to create a 3D context for their UI). The net result is that other than a few specific applications where the profile will exist and be locked to the iGPU, with no option to change to dGPU, everything else that uses higher function graphics can be customized to run on a specific GPU, but if you set something to iGPU presumably you want it to always run there—otherwise you would use the “Based on power source” setting.
A full set of screenshots from all the driver screens is available in the gallery below if you’re interested.
One final topic worth discussing is Windows 8. Certainly there are owners of existing laptops with switchable graphics that are wondering if they can upgrade to Windows 8 and what will happen. We’ll have to see how this actually plays out, but it sounds like the earlier versions of PowerXpress (3.0 and earlier) will probably get support with one driver bundled with Windows 8, and that may be it—but there’s always the possibility for the laptop OEMs to release their own updates, or for AMD to roll out additional drivers for older laptops. The potential for PowerXpress 4.0 and later laptops to get regular driver updates (for Windows Vista/7/8) is there, but until we actually start seeing public driver releases AMD hasn’t fully committed to supporting all of those laptops.
Other Technical Details and Performance Expectations
So far we’ve discussed the past and near future of AMD’s Enduro/Switchable Graphics, but we haven’t gone into the technical aspects much. We’ve covered most of this previously (and neither AMD nor NVIDIA provide a ton of detail as to how precisely they’re doing the work), but there are a couple other tidbits we wanted to briefly discuss before wrapping up.
At a high level, all of the display outputs on a laptop now connect to the Intel iGPU, and AMD is able to route their content through the PCIe bus to the embedded graphics and out to the display. Nothing has really changed there; content is copied from the dGPU to the iGPU output in some fashion and you get the ability to switch seamlessly between the two GPUs. We also mentioned earlier that AMD has now removed the need for the active PCIe bus when the GPU is powered down, which drops power use of the dGPU from less than 100mW or so down to 0W.
One thing that hasn’t changed is AMD’s use of Link Adapter Mode (LDA) where NVIDIA uses Multi Adapter Mode, but we now have an explanation of why this difference exists. As far as we could tell, there’s not really an inherent superiority of either mode for general use. The primary reason AMD uses LDA is that they also have a chipset business, where NVIDIA has bowed out of making chipsets. Why this matters is that LDA is what facilitates AMD’s Dual Graphics (formerly Hybrid CrossFire)—the dGPU and the iGPU working together to render a scene. This is less important on Intel platforms, as AMD isn’t trying to do any cooperative rendering with Intel iGPUs; they potentially could in the future if desired, but that seems unlikely given the difficulty of getting even similar GPUs to work together. AMD also indicates that the use of LDA provides full support for Windows 8 Metro applications; I would assume NVIDIA also supports Metro apps, so unless that proves to not be the case (and we should know soon enough), other than Dual Graphics it appears that Enduro and Optimus are essentially at parity in terms of how they function, with software/drivers being the key differentiator.
Something else we’re still waiting to see is the packaging of the new Mobility Catalyst drivers. AMD didn’t provide us with the actual installation files—they installed them for us as they were still in a rather early state. That being the case, we aren’t sure if the Mobility Catalyst drivers for Enduro systems will feature totally independent drivers as far as Intel iGPUs are concerned, but that appears to be the case. If all goes as planned, you will be able to update your AMD dGPU drivers separately from your Intel iGPU drivers without any trouble once the Enduro Catalyst drivers start coming out.
AMD let us borrow a Sager notebook for a short time after the preview to test out the new “Enduro 5.5” drivers, and they also helped us install the drivers on a Clevo P170EM system from AVADirect. We’ll be providing a full review with performance data for the P170EM in the near future, but in the meantime we wanted to show off the Sager notebook as well as discuss performance expectations. Here's a rundown of the system specs for the Sager NP9150 along with some photos.
|Sager NP9150 / Clevo P150EM Specifications|
(Quad-core 2.60-3.60GHz, 6MB L3, 22nm, 45W)
|Memory||8GB (2x4GB) DDR3-1600|
Intel HD 4000
(16 EUs, up to 1250MHz)
AMD Radeon HD 7970M 2GB GDDR5
(1280 cores @ 850MHz, 256-bit 4800MHz RAM)
|Display||15.6" WLED Glossy 16:9 1080p (1920x1080)|
|Storage||180GB Intel 520 SSD|
|Operating System||Windows 7 Home Premium 64-bit|
|Price||$1919 as configured (9/05/2012)|
The Sager unit is their rebranded Clevo P150EM, and it has many of the same design issues that we’ve seen with Clevo in the past. The backlit keyboard with zoned lighting is a new addition, and they’ve tweaked the keyboard layout as well. Interestingly (and frustratingly), while they’ve mostly fixed my complaints with the 10-key layout, they went ahead and screwed up the main keyboard layout. The Windows key is now to the right of the spacebar, and there’s a second backslash key just right of the spacebar. I’m also not a fan of the tactile feedback from the keys, though it’s not terrible. Outside of the keyboard quirks and overly abundant use of plastic for the chassis, though, the performance is certainly there.
We ran through our current suite of games at the native 1080p on the P150EM with settings maxed out in most titles. Total War: Shogun 2 wouldn’t allow us to select Very High settings (a problem we’ve encountered on other systems in the past where the game incorrectly detects the amount of video memory and/or iGPU feature set rather than looking at the dGPU), but otherwise we get very respectable frame rates. Civilization V continues to be a bit sluggish at max settings (around 26FPS), but the brutal Battlefield 3 manages 36FPS and could very easily reach 40+ FPS if you disable 4xMSAA and just use FXAA. Those are the three lowest performing games we tested, with everything else running smoothly in the 45+ FPS range. A quick look at the last GTX 580M system we tested shows performance is better in over half of the games, and slightly lower in the other three titles. We’ll have a second look at the P170EM with a GTX 680M from AVADirect shortly after our full HD 7970M review, though, so stay tuned.
Finally, AMD did inform us that the current drivers aren’t fully optimized for performance (particularly with the 7970M), so we should hopefully see some gains with the final driver release—or if not then, the next release. Performance with GCN architecture desktop cards has been a little erratic since the launch, up until the latest Catalyst 12.7 drivers. I believe that the current beta drivers I’m using also predate 12.7 in some aspects (though they're version 126.96.36.199), so if that’s the case then the official release should clean things up quite a bit.
It’s been a long road for AMD’s switchable graphics drivers, but if AMD can deliver everything they’re promising, we’re finally seeing the light at the end of the tunnel.
There have been two major frustrations over the past couple of years for us: first, we just haven’t seen much in the way of AMD mobile GPUs for review. That’s not because the systems aren’t out there, but most of the OEMs using AMD GPUs have been hesitant at best to sample them to reviewers. That’s a problem because when hardware isn’t getting reviewed, it usually means there’s not a huge amount of public interest, which means that the hardware isn’t selling. None of us want the graphics arena to turn into a one sided affair, but NVIDIA’s Optimus initiative has really caught hold since launching and AMD hasn’t had a proper answer—until now.
The second issue with AMD’s mobile graphics solutions has been the drivers. Discrete-only notebooks have been able to get driver updates, but only at the cost of usable battery life; meanwhile the more interesting switchable solutions have received essentially nothing in the way of driver updates from the laptop OEMs—the Sony VAIO C I tested a year ago continues to have most of the same driver problems, and the last driver update from Sony in October 2011 uses 8.850 series drivers from AMD (roughly matching up with the Catalyst 11.5 release). HP’s ENVY 15t-3000 is a more recent offering with an Ivy Bridge CPU and HD 7750M graphics, and the drivers there are 8.951 (Catalyst 12.3) and haven’t been updated in months. If you purchase a laptop with a discrete GPU, presumably you want to use that GPU for gaming or other graphics applications, and that means you’ll want to get driver updates on occasion. Prior to the Enduro 5.5 update that hasn’t generally been possible, and we’re eager to see that change.
Overall, we’re pleased to see AMD taking a serious look at their switchable graphics technology and working to bring it up to the level of the competition. We wish it would have happened sooner, but at least it's not too late to get things headed in the right direction—and we'd suggest that perhaps dropping the monthly driver updates is part of the reason we're finally getting needed Enduro enhancements. Right now, it feels as if Enduro 5.5 is basically where Optimus was back in early 2010, so AMD’s not out of the woods yet, but get us a couple driver updates this year and we’ll be ready to believe that Mobility Radeon users will receive the same level of driver support as desktop Radeon users.
We’ve never really had a problem with the performance of AMD’s mobile GPUs, and in recent years they have often managed to trump NVIDIA on a bang-for-the-buck analysis. Unfortunately, without driver updates we’ve been hesitant to recommend laptops with AMD’s mobile GPUs. The 7000M “London” GPUs (basically GCN/Southern Islands for mobile users) have a lot to offer, and with the updates to Enduro and regular driver releases from AMD, the mobile graphics competition is about to get a lot more interesting. Competition is always nice to see.
For anyone interested in seeing the full set of “Enduro 5.5” slides, the above gallery is available.
Update: Many readers have commented (and there are lengthy forum posts elsewhere) on issues with the 7970M GPU being underutilized while playing games. I ran a few quick tests of my own with the preview drivers to see if things are any better. All tests were run at 1080p, with the games set to either "Medium" or "Maximum" settings. Here are the results:
|Clevo P170EM GPU Utilization|
|Game||1080p ~Medium||1080p ~Maximum|
|Batman: Arkham City||47%||100%|
|Elder Scrolls: Skyrim||54%||60%|
Obviously, the GPU isn't being maxed out in terms of what it can do in many of our test cases, and our complete benchmark results back this up. Especially at lower detail settings and lower resolutions, the HD 7970M isn't scaling to the sort of frame rates we'd expect. Is this a problem with Enduro in general, or just with the current drivers? AMD might also be intentionally scaling down GPU utilization (and thus performance) at lower quality settings, as the difference between 100 FPS and 150 FPS isn't particularly important on a 60 Hz LCD.
That said, in many cases we're seeing slightly lower performance with the preview drivers than the initial drivers, so clearly there's optimization work that needs to be done, and we may see improved results with the public release (most likely in October). While many people are frustrated with the current situation, I maintain that getting regular driver updates is the first hurdle that AMD needs to address; once that's in place, future driver releases can hopefully improve performance (along with GPU utilization).