nvidia cripples webgl on dual-gpu devices

2,718 views
Skip to first unread message

Ross McKegney

unread,
Dec 30, 2013, 10:26:22 AM12/30/13
to webgl-d...@googlegroups.com
When I first got my Macbook pro, one of the first things I did was check to see how/when my machine was switching between GPUs. Seemed to be making smart decisions at least on the Chrome apps that I tested (ours included). 

Apparently, with the latest drivers, not so much - higher power GPU is not supported for Chrome, Firefox, or IE:

Ugh :(

I'm hoping that this turns out to be a special case for a specific hardware configuration, or maybe some kind of bad joke. 

Tony Parisi

unread,
Dec 30, 2013, 2:03:39 PM12/30/13
to webgl-d...@googlegroups.com
!@#$

I hope that some day soon hardware companies will realize that WebGL is the future and that first-class support for it is just as important as for native apps.

It's doubly ironic given that Khronos is largely made up of hardware companies.





--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



--
Tony Parisi                             tpa...@gmail.com
CTO at Large                         415.902.8002
Skype                                     auradeluxe
Follow me on Twitter!             http://twitter.com/auradeluxe
Read my blog at                     http://www.tonyparisi.com/
Learn WebGL                         http://learningwebgl.com/

Aleksandar Rodic

unread,
Dec 30, 2013, 2:17:17 PM12/30/13
to webgl-d...@googlegroups.com

This must be a mistake and needs to be fixed as soon as possible.

Kenneth Russell

unread,
Dec 30, 2013, 3:20:39 PM12/30/13
to webgl-d...@googlegroups.com
The WebGL working group contacted NVIDIA about this policy decision
some time ago. Just contacted them again; aiming for a better result.

Note that a workaround is to disable Optimus completely at the BIOS level.

Tony Parisi

unread,
Dec 30, 2013, 3:26:03 PM12/30/13
to webgl-d...@googlegroups.com
Ken - do you have some documentation on the Optimus workaround? Might be handy for people...

Kenneth Russell

unread,
Dec 30, 2013, 4:14:43 PM12/30/13
to webgl-d...@googlegroups.com
No -- but see AlteredQualia's response in
https://twitter.com/Tojiro/status/417679652790874112 . In the past
I've found it necessary to disable Optimus in the BIOS on Linux
laptops in order to use the NVIDIA GPU at all.

Matthew Amato

unread,
Jan 8, 2014, 9:50:47 PM1/8/14
to webgl-d...@googlegroups.com
Unfortunately, disabling Optimus in many newer laptops causes "Integrated Graphics only" mode. The only two ways I've been able to workaround this limitation on my own machine is to either rename chrome.exe to something else or use mklink to create a symbolic link with a name other than chrome.exe.  Once that happens, I can configure the new executable to run with discrete graphics.  The symbolic link is a better solution because it still works after chrome updates.

The above is also true for Firefox.

James Niesewand

unread,
Apr 7, 2014, 10:22:30 AM4/7/14
to webgl-d...@googlegroups.com
I've been in touch with nvidia about this, and they specifically deny that it's anything to do with them, saying quite specifically that it's the laptop manufacturers who have done this, not nvidia.

nvidia Customer support comms:
Incident: 140404-000381 

Time: 04/06/2014 07:37 PM
nvidia: "As advised in my previous communication, the function where browsers can be run using the NVIDIA graphics card is set by the laptop manufacturers and we do not have an option to change the same. The Intel graphics provided with the laptop is powerful enough to run browser games, hence I suggest you to contact the laptop manufacturer and check if they might have any recommended settings."

Time: 04/07/2014 06:34 AM
Me: "So the Optimus default profiles where the option to allow IE, Chrome, Firefox etc to run on the nvidia processor (rather than the integrated graphics card) has been greyed out and can't be changed... that's been done by the laptop manufacturer, and not by nvidia?  Just want 100% clarification on this. Many thanks."

Time: 04/07/2014 06:58 AM
nvidia: "Yes, you are correct, the link http://nvidia.custhelp.com/app/answers/detail/a_id/3330 clearly explains the reason that using discreet video for IE, Chrome or Firefox will prevent using power needlessly, since most browser content displays correctly on the integrated graphics processor."

Just passing it along.

James Niesewand
CEO, Illyriad Games

Tony Parisi

unread,
Apr 7, 2014, 10:32:02 AM4/7/14
to webgl-d...@googlegroups.com
"Needlessly?" hrm


--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Tony Parisi                             tpa...@gmail.com
CTO at Large                         415.902.8002
Skype                                     auradeluxe
Follow me on Twitter!             http://twitter.com/auradeluxe
Read my blog at                     http://www.tonyparisi.com/
Learn WebGL                         http://learningwebgl.com/

Read my books!
Programming 3D Applications in HTML5 and WebGL
http://www.amazon.com/Programming-Applications-HTML5-WebGL-Visualization/dp/1449362966
WebGL, Up and Running

http://www.amazon.com/dp/144932357X

Ashley Gullen

unread,
Apr 7, 2014, 11:41:24 AM4/7/14
to webgl-d...@googlegroups.com
No, the argument about avoiding needless battery drain doesn't make sense, because you can't even set the nVidia GPU when plugged in and charging. There's a separate option for that mode, and it's still disabled and forces you to use integrated graphics for all major browsers.

Pat Stevenson

unread,
Apr 8, 2014, 7:50:32 AM4/8/14
to webgl-d...@googlegroups.com
This is not good news.  Laptops are getting lighter and more solid state, which makes it a lot easier to lug around but still do high end graphics.  I've been waiting for a new laptop that can do desktop quality graphics, but not weigh in the 7+ lbs range.  The new Razer Blade finally meets that need, but in using Chrome, Firefox, etc, that discrete GPU is critical when doing WebGL.  Could the manufacturers be making their decisions to avoid heat?  The chips still do get quite warm while you run.  Is NVIDIA bowing to notebook manufacturers, even though they are claiming its not them?  This takes me back to the days during SIGGRAPH when I asked Intel when were they going to put multiple AGP card slots to add multiple graphics cards to systems.  Their answer, "Why would anybody need multiple graphics cards?"

Aleksandar Rodic

unread,
Apr 8, 2014, 7:59:20 AM4/8/14
to webgl-d...@googlegroups.com
This problem does not affect laptops only. We had the same problem with a desktop machine by HP. We tried the mklink hack to enable nVidia GPU on Chrome (no success). Eventually we installed Ubuntu but nVidia GPU was not even visible to the OS.


Aleksandar Aki Rodić |  @xyz_ak |  +1 510 761 5522 | aleksandarrodic.com


On Tue, Apr 8, 2014 at 1:50 PM, Pat Stevenson <pat.st...@zoho.com> wrote:
This is not good news.  Laptops are getting lighter and more solid state, which makes it a lot easier to lug around but still do high end graphics.  I've been waiting for a new laptop that can do desktop quality graphics, but not weigh in the 7+ lbs range.  The new Razer Blade finally meets that need, but in using Chrome, Firefox, etc, that discrete GPU is critical when doing WebGL.  Could the manufacturers be making their decisions to avoid heat?  The chips still do get quite warm while you run.  Is NVIDIA bowing to notebook manufacturers, even though they are claiming its not them?  This takes me back to the days during SIGGRAPH when I asked Intel when were they going to put multiple AGP card slots to add multiple graphics cards to systems.  Their answer, "Why would anybody need multiple graphics cards?"

--

James Niesewand

unread,
Apr 22, 2014, 1:59:26 PM4/22/14
to webgl-d...@googlegroups.com
Ah.  This whole decision tree is bullshit, and it's being compounded over time.

Let me have a think about the best way forward here.  Clearly we need to bring some pressure to bear on the right people in the right organisations - and we (at illy) might have some 'ins' to do this; I just have to weigh a few things up and assess the right time / mechanism.

Will keep you posted,

J

Florian Bösch

unread,
Apr 23, 2014, 4:22:51 AM4/23/14
to webgl-d...@googlegroups.com
For the record, and benefit of any AMD/Nvidia/HP/Apple folks reading this.

Preferring the discrete GPU rather than the integrated one may be appropriate in some situations, but it should always be possible for the user to easily override it.

The integrated preference is making life for WebGL difficult.

Using the integragted GPU does not only affect WebGL, it also affects Canvas2D (since this relies on hardware acceleration in some cases), hardware accelerated compositing of a webpage, hardware accelerated video decoding and upload and so forth.

If a remedy to this isn't devised in a fair amount of time, I'll be forced to shine a very bright light on the situation that OEMs/GPU makers sell people pricey hardware and then disable said hardware without giving users a choice. I will guarantee that this will not be good PR gentlemen.

Ben Adams

unread,
Apr 23, 2014, 9:46:34 AM4/23/14
to webgl-d...@googlegroups.com
I might be making a few assumptions; but going on what Nvidia seems to be publicly saying Optimus is mostly about power management and battery life. So I'd assume it would switch the default choice of gfx card based on the power management profile, with the optimus panel acting as overrides per program. However, in Windows Nvidia is absent from the Power Options, unlike Intel; so there is no plugged in/on battery choice:

Christmas last year Nvidia were touting how IE now had WebGL enabled so you could track Santa in it <a href="http://blogs.nvidia.com/blog/2013/12/23/tracking-santa-with-a-little-help-from-that-brand-new-gpu-2/">Tracking Santa, With a Little Help from that Brand New GPU</a>. But if you have integrated graphics, which is more and more common as they are now embedded on the CPU, the Nvidia control panel shows "Integrated Graphics" as the choice and a disabled option to allow the Nvidia graphics card:

Whereas I'd expect it to operate more like:

I do like the option do downlevel my browsers gpu use (e.g. to use integrated) as that allows me to test for people that don't have a separate gfx card; but with the current set up it means if someone has integrated gfx, a high end cpu and are on power they will still only use integrated graphics; so the peak of WebGL, with Nvidia, would be those people with a mid-range or older CPU which is a bit sad.

For an end user perspective, they have a good gpu; WebGL performs slowly; but they know they have a good gpu, so there is a problem with WebGL - when this is not the case.

Tony Parisi

unread,
Apr 23, 2014, 12:01:36 PM4/23/14
to webgl-d...@googlegroups.com
Ben said it all:


"For an end user perspective, they have a good gpu; WebGL performs slowly; but they know they have a good gpu, so there is a problem with WebGL - when this is not the case."

--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Cass Everitt

unread,
Apr 23, 2014, 1:29:18 PM4/23/14
to webgl-d...@googlegroups.com

Hi all,

I just wanted to let you know that people from NVIDIA are aware of this issue and we're going to try to get a better result soon.  If anybody wants to contact me directly, please feel free.  I'm cass at nvidia.

Sorry for the trouble!
Cass

James Niesewand

unread,
Apr 23, 2014, 3:12:00 PM4/23/14
to webgl-d...@googlegroups.com
Awesome stuff, Cass; really glad to see you guys are getting on top of this.

Best,

James N

Tony Parisi

unread,
Apr 23, 2014, 3:16:19 PM4/23/14
to webgl-d...@googlegroups.com
Huzzah - thanks for your attention on this Cass!



--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Frank DeLise

unread,
Sep 25, 2014, 2:07:52 PM9/25/14
to webgl-d...@googlegroups.com
Did anyone find a solution to solve this?

I am testing some webGL work, but Chrome is only using my Intel card..

Frank DeLise
Director, Games technology
Autodesk

Ben Adams

unread,
Oct 3, 2014, 7:53:25 PM10/3/14
to webgl-d...@googlegroups.com
Yes, ish

If you update your drivers you can now switch the default program in the NVIDIA Control panel for Chrome, IE and FF:

Inline images 1

I say ish, because I don't know what the default settings are for a user, so it will work for an individual (if you go to choose your settings) but I don't know what the situation will be for people generally.

Equally, I'm not sure what the best situation would be; but its nice to have the ability back. I used to think the answer was just a power issue, so on power use discrete gpu, off power use integrated and allow changing it up in the power mgmt settings.

However, I've come to like my laptop being cool and silent, rather than hot and all fans - so the way is no longer as clear to me; and I'm not sure the browsers could easily switch gpu on the fly based on usage.

(Oh you've opened a shadertoy page, lets bring the render farm online...)

Kind regards

Ben Adams
CTO - Illyriad Games
@ben_a_adams

--
You received this message because you are subscribed to the Google Groups "WebGL Dev List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to webgl-dev-lis...@googlegroups.com.

Ben Adams

unread,
Oct 3, 2014, 8:03:25 PM10/3/14
to webgl-d...@googlegroups.com
I assume its working, though I context lost on this regardless: https://www.shadertoy.com/view/ls2SDD :)
Reply all
Reply to author
Forward
0 new messages