In the mobile world, the integration of GPUs has always been up against the constraints of space, heat and energy consumption, which explains the enormous success of IGPs. With Optimus, NVIDIA is trying to go further in the reduction of these constraints, mainly in terms of energy consumption
Laptops have been able to integrate both an IGP and a GPU for some time now. Various techniques, known overall as Switchable Graphics allow the user to select the IGP or the GPU as the principle card depending on whether performance or battery life is being prioritised. A certain amount of automation is possible. NVIDIA uses the Hybrid Power brand and AMD PowerXpress with respect to these techniques. The earliest implementation was entirely at a hardware level and this meant you had to reboot the system to go from IGP to GPU. The second generation was more flexible and you no longer had to reboot but the user still had to choose manually, which, according to NVIDIA, most general consumers don’t know how to do.
Current implementation of Switchable Graphics
At the launch of Hybrid Power and PowerXPress, both AMD and NVIDIA promised a transparent experience with the imminent arrival of improved drivers. A promise never kept and support of these technologies has remained very approximate. You have to say that implementation is complex, above all with Windows Vista when you have to couple an IGP and GPU by different manufacturers – Vista only allowed for the loading of 1 graphics driver at any one time. Going from one to another was therefore relatively ungainly.
With Windows 7 and so as to increase competitivity with the AMD offer that is a generation in advance, NVIDIA has put an enormous amount of work into its drivers so it can finally offer the experience that was promised over two years ago and for which it has come up with a new brand: Optimus.
The implementation of Switchable Graphics with Optimus.
With Optimus, the GPU is used as an accelerator by the system when it needs it. Just like with the first 3Dfx Voodoos, the display is taken care of by the main graphics card, which here is the IGP. This development allows simpler implementation as you don’t need to connect both graphics controllers to the display. The GPU is connected only by PCI-Express and uses this channel to transfer the images that it has processed to the memory used by the IGP for the display.
NVIDIA says that this has been made possible by the Optimus Copy Engine, which has been used in GPUs since the GeForce 200M and which is reported no longer to block the GPU in the processing of images during PCI-Express transfers. In reality however this feature is no innovation and has been present in GPUs for a long time. NVIDIA also mentions a technology that it’s in the process of patenting but without giving any more detail, which is strange because this type of design is an exact copy of what Intel presented with its last mobile platform. All this is probably no more than an economy with the truth so as to add subtance to the technical documentation and weight to a technology that in reality only represents an improved driver.
This doesn’t of course take anything away from what NVIDIA have managed with Optimus, the first transparent use of a hybrid system. The NVIDIA driver detects applications that can benefit from the GPU and passes over the processing of these applications transparently and seamlessly. For this the driver can detect calls to Direct3D, DXVA and even CUDA but this wouldn’t seem to be reliable enough as NVIDIA is using profiles to detect the applications. They will be updated in a very simple way, without necessitating reinstallation of the graphics driver and the user will also be able to create new profiles very easily.
With Optimus, NVIDIA is showing that simply investing resources in the development of a driver can revolutionise the user experience. Using Windows 7, Intel IGPs and standard communications architecture between components, Optimus also shows why a standardised, open ecosystem is vital to allow innovation and the best overall user experience, something that paradoxically NVIDIA themselves often seem to neglect, instead favouring proprietary technologies.
Of course, we’ll need to wait and see if maintenance of the drivers is kept up and what laptop manufacturers will do with the technology. Recent IGPs are in fact able to handle all aspects of video correctly (as long as drivers measure up of course) and Optimus will come into its own in gaming and applications (mainly video processing) that can put the processing power of the GPU to good use, whether in terms of graphics or computing. In other words, coupling a GPU that is too low end with an IGP won’t always be worth it while heat constraints remain an issue and will still make the integration of rapid GPUs problematic. Some intelligent design work from the manufacturers will therefore be vital. It would also be interesting to see a development that could optimise energy consumption of the CPU/GPU pairing according to usage and which would probably enable the use of slightly higher performance GPUs in laptops.
Note that NVIDIA currently supports Optimus on old and new generation Intel platforms. To our knowledge, AMD is still using the old method for PowerXPress and we don’t know when they will be in a position to offer a software solution that measures up to Optimus.