45

I've got a new Dell XPS 15 (L502x) with an NVIDIA GeForce 540M, Intel Core i7Q 2.2 Ghz, and Crucial RealSSD hard drive. As with most laptops with NVIDIA cards these days, it's got the "Optimus" feature, which switches between the integrated Intel HD graphics and the much more powerful NVIDIA card seamlessly, with the goal of providing better battery life.

I assumed when I bought this laptop that there would be certain common sense options, such as the ability to use only the NVIDIA card when on A/C power, and/or the ability to force usage of one card or the other. It appears that either I was wrong, or I just can't figure out how to do it.

I want to know how to configure Optimus in such a way that the NVIDIA card is always used for all tasks, including the Windows desktop/Aero. I'm not satisfied with the performance of the Intel card, so I'd like to bypass it completely. I'm aware that due to the hardware configuration of these cards, the Intel hardware cannot simply be disabled, but I'd like the NVIDIA card to be doing all the work. I've dug through both the NVIDIA Control Panel and the Intel settings program, without finding any clues how to do this. I've done a lot of googling on the subject, but found little of use.

Things I have tried so far:

  • Checked in the BIOS for an option to use one video card or the other exclusively; no such option exists.

  • Updated the BIOS, with no effect.

  • Set Nvidia Control Panel to use the Nvidia GPU as the default device.

  • Tried forcing dwm.exe to run on the NVIDIA GPU via the NVIDIA control panel, with the goal of getting Aero to render on the NVIDIA GPU. There appears to be a special exception for this program, as the drop-down box for GPU selection is grayed out and set to "Integrated Graphics":

    NVIDIA control panel hates dwm.exe

  • Tried forcing older, pre-Optimus drivers on the card; no success.

Any suggestions are very welcome, but please don't answer that I shouldn't be looking to disable Optimus!

17
  • 3
    I'll answer the oposite YOU WANT TO DISABLE OPTIMUS (it sucks) doing it is however impossible as far as I know and I have been going at it with my alienware m11x for over a year now. With updated drivers you can go into advanced mode and set the preferred card to be the 540M however it is still only going to engage when a DirectX capable application is launched. May 12, 2011 at 20:10
  • 2
    Pleasant though that may be, it hardly makes up for the Intel chip being incapable of handling basic desktop tasks. I'd give it up if it meant aero would run smoothly
    – Fopedush
    May 12, 2011 at 22:23
  • 1
    No, everything is working as designed. But try running something like Switcher (insentient.net). The intel card manages to pump out a frame every few seconds. Flip3d's framerate begins to dip into the unacceptable range (<60) with any more than 3-4 windows open. Even basic aero tasks, on the other hand, with stutter and fail if they try to run while the CPU is in high demand (e.g. launching visual studio 10 - the window never animates properly as it comes up)
    – Fopedush
    May 13, 2011 at 14:26
  • 1
    Quite simply, I demand/expect more from Aero than 99.9% of people. I'm confident that there is absolutely nothing wrong with the integrated graphics on this machine, other than inadequate design.
    – Fopedush
    May 16, 2011 at 17:46
  • 2
    @Shinrai - I maxed out the specs on this machine as it is. Take a look, I wasn't exactly skimping. 2.3Ghz Core i7 is the fastest mobile CPU dell even offers, and I doubt that extra 100 mhz would make any difference in (integrated) graphics rendering. I bought a machine with an Nvidia Geforce 540M because I knew I wanted fast rendering for desktop compositing. Every sandy bridge machine on the market seems likely to have exactly this same problem - which is why I might as well try to solve it on this laptop.
    – Fopedush
    May 17, 2011 at 15:34

8 Answers 8

36
+250

Short answer: It doesn't "switch" and you can't disable the Intel IGP.

Long answer: From a hardware point of view the Intel IGP is always handling image output to the laptop's LCD screen. The NVIDIA GPU copies rendered graphics into the Intel IGP's frame buffer (which resides in system memory) when it is active. The Optimus software makes certain programs use the GPU based on the loaded profiles and user settings. It currently does not support running the OS desktop compositing on the GPU.

enter image description here

See the Optimus White Paper for more details.

4
  • I didn't realize it did the rendering this way, interesting...also, this further cements my concern that if the BIOS doesn't give a way to explicitly do it, there is not any way to do it. +1 for that.
    – Shinrai
    May 16, 2011 at 21:08
  • 1
    Another one of the diagrams in the white paper seems to indicate that the Nvidia card is still capable of doing direct rendering to a screen through it's own frame buffer, without any involvement from the Intel card - so long as the Nvidia card is preferred at a driver level. It looks like the only thing that matters is which card the screen is physically connected to - The nvidia card cannot render directly to a screen that is connected physically to the Intel card. Maybe, with some rework, I can hook up the primary display directly to the nvidia card.
    – Fopedush
    May 17, 2011 at 15:43
  • Further evidence that this is the case: When I hook up a second monitor to the laptop through the HDMI port, everything on that monitor is rendered with the Nvidia GPU, including desktop compositing.
    – Fopedush
    May 17, 2011 at 15:52
  • 3
    I appreciate the thoroughness of your answer, but I still feel like there may be a way to circumvent this problem. I would gladly mark this as the correct answer and give you the 500 point bounty, but I feel that would be doing a disservice to anyone else fighting this problem. Optimus is becoming more common, and many people may want to take a crack at this now or in the future - so I want to leave the question open. You've got a good number of upvotes, so you should receive half the bounty (250) when it ends. Thank you for your effort.
    – Fopedush
    May 22, 2011 at 17:00
4

I am not familiar with this particular laptop, but there is very often an option in the BIOS to specify either Optimus graphics, or to force either the Intel or Nvidia card to be dominant. That would completely disable the one chipset.

5
  • 1
    Damn I wish my laptop had this option... however it does let me increase the FSB which is rare in laptop bios. May 12, 2011 at 20:13
  • 1
    Unfortunately there is no such option in the bios on this laptop.
    – Fopedush
    May 12, 2011 at 20:14
  • 1
    @Fopedush - Then you're probably out of luck, I know of no other way to do it, and I spent a lot of time researching this for a particular compatibility problem we had with a video peripheral we sell. (Luckily, the Thinkpads that we're selling it with DO have this option in the BIOS.)
    – Shinrai
    May 12, 2011 at 20:17
  • 1
    @Kyle: "increase the FSB"? That implies the CPU on your laptop can be overclocked!
    – bwDraco
    May 16, 2011 at 16:40
  • @Dragonlord exactly, it's a very nice feature. May 16, 2011 at 17:01
3

I don't understand why DWM is different from any other 3D application, and hence why it has to be special.

It's a bit painful, but you might want to take a look at where all this information is stored (it might be in the C:\ProgramData\NVIDIA Corporation\Drs folder) and then try modifying it with a hex editor to see if you can enable the combo box.

If you're into programming, you could also try forcing the drop-down menu to be enabled by (1) getting the window handle to the combo box, and (2) calling EnableWindow on it, although in my experience this doesn't always work.

16
  • It's probably being treated differently simply because of the fact that it's operating at such a low level on such an integral part of the OS. They don't want you dicking around with it, I suppose. :/
    – Shinrai
    May 17, 2011 at 14:36
  • 1
    Dicking around is my middle name. I like this answer because I hadn't thought to try it yet. Unfortunately the nvidia profiles are encrypted, so I wouldnt be able to manually edit them very easily. As for forcing the dropdown, I doubt it will really work, but it sounds like fun to try. Maybe I'll take a crack at it later.
    – Fopedush
    May 17, 2011 at 15:45
  • @Shinrai: Lol. I'm not sure it's quite as low-level as you think... it's not even running under the SYSTEM account, and it's all in user-mode. @Fopedush: Hm... are you sure they're encrypted? When I open some files in that folder on my computer, I see a lot of things in plain text...
    – user541686
    May 17, 2011 at 17:58
  • @Mehrdad - I don't think 'low level' was exactly what I meant to say. A lot of things make assumptions about how dwm is operating, and they don't want you undermining those assumptions, how's that?
    – Shinrai
    May 17, 2011 at 18:05
  • @Mehrdad: You're right, there does appear to be something there, but I can't make heads or tails of it. I don't think that these are the profiles though, because those are supposed to be stored in "Encrypred XML". (See Brian's answer)
    – Fopedush
    May 17, 2011 at 18:45
2

Optimus CAN be disabled in the BIOS, only problem is you need to UNLOCK the default BIOS.

I have an Alienware and unlocked the A08 BIOS, and there you can disable the IGP. I only run on NVIDIA and it is much smoother now.

5
  • This question may be old, but that doesn't mean I'm not still looking for an answer. I'll take a crack at this tonight. In the mean time, can you provide any additional details about this? Shall I just browse over to bios-mods and search for an unlocked version of the bios for my machine?
    – Fopedush
    Dec 16, 2011 at 21:34
  • 1
    Looks like someone created an unlocked bios A06 for the XPS15 (forum.notebookreview.com/7211002-post1755.html). He says that it provides an option to disable the IGP, but he also says that it doesn't work. Regardless of that, I'll give it a shot tonight and see what happens. I'm giving you an upvote simply because this is a new idea that I haven't tried yet.
    – Fopedush
    Dec 16, 2011 at 21:46
  • 1
    Unfortunately while I was at work today I had the mistaken impression that this laptop was an L501x. It is actually an L502x. According to bios-mods, the L502x uses a UEFI bios, and so far no one on that site has been able to provide an unlocked version.
    – Fopedush
    Dec 17, 2011 at 2:09
  • @Fopedush did it work with unlocked bios? Mar 31, 2019 at 15:32
  • @MohammedAslam No, I never found a working unlocked BIOS.
    – Fopedush
    Apr 1, 2019 at 16:21
1

You might have a look at this patch to the Nvidia drivers : Hybrid PhysX mod v1.03 / v1.04ff, which seems to be related to your problem. Better read the comments as well.

Towards the end, one comment confirms v1.04ff as working for version 270.61 that you are using.

If you decide to try it out, first take some good backups.

1
  • 1
    I tried this to seemingly no effect today while I had a free moment, and it didn't seem to work. I'll read the thread more thoroughly this weekend (maybe I missed something). Will report back.
    – Fopedush
    May 21, 2011 at 4:24
0

Go to Global Settings tab and select to use Nvidia Card as preferred device. This was the first thing I did for my notebook and had no problems with it. If that's not working, you've probably have wrong drivers. Try to clean your system from old drivers using DriverSweeper, and then install the recommended drivers from your DELL website

4
  • 2
    Even with the Nvidia card set to the preferred device, all desktop compositing is still performed on the IGP.
    – Fopedush
    May 22, 2011 at 21:58
  • @Fobedush - absolutely right.
    – Joshua
    Jun 15, 2011 at 13:34
  • @Fobedush how do you know that desktop compositing is performed on IGP?
    – Dmitriy
    Jan 17, 2012 at 23:35
  • 1
    @geotavros the Nvidia Optimus Test Viewer can be used to confirm that desktop compositing is being performed only on the IGP regardless of optimus settings.
    – Fopedush
    Feb 23, 2012 at 2:19
0

I found a solution! Follow these steps:

  1. In the Start menu search box, type hdmi and click Connect to an external display
  2. Click the Detect button at the top of the window
  3. The Display drop down menu will say: 1. Name of your display - available (GPU) - available intel chipset. Click on the available (GPU).
  4. Click Apply.

It should work on the GPU now. I used @Fopedush's answer to figure this out.

2
  • 5
    Chan: Have you confirmed that this works using a tool such as the NVIDIA Optimus GPU State Viewer? It seems that this method is simply displaying available auxiliary outputs - one of which is the Nvidia card. After clicking on "Available GPU", the "Apply" button remains grayed out for me, as I have not actually made any changes. Perhaps you can clarify your instructions or confirm that this works for you with the test tool?
    – Fopedush
    Jun 16, 2011 at 6:12
  • Those two GPUs doesn't have a screen connected.
    – Sirber
    Nov 6, 2013 at 16:49
-2

I don't know if this actually works but try Settings > Global setting to nvidia gpu. This again doesn't bypass the intel graphics completely but rather tells the OS to dump all it display related job to the card.

Personally speaking I don't recommend dumping all the work to the gpu because it reduces the overall life of the card as well as generate a load of heat. I noticed the fan running faster. And the sides of the laptop get more hotter than normal. Also battery life has reduced to half.

1
  • 2
    "I don't know if this actually works but..." is not a great way of giving an answer!
    – Andrew
    Nov 14, 2012 at 8:58

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .