Hi guys, I have a customer with two Lenovo Legions with the RTX 3070 cards and these has AMD Radeons too, and no matter what we try on one of those we can’t get it to run Rhino on the RTX card.
The other machine works just fine.
Any ideas on what can cause this?
We have tried to upgrade from windows 10 to 11 as that was done on the other machine that works fine.
And we have tried to set up a profile for Rhino in the nvidia drivers.
And tried to start Rhino on the laptop screen too, just in case something was caused by the monitor cable beeing hooked up wrong.
Hi Jeremy,
thanks for the reply, we have tested with the dx diagnostics, but do you recommend another test?
She did have a monitor hooked up with a usb, but we tested now with out all that stuff, and also installed the amd drivers agan ++
Cloning the other pc’s hdd is not an option, no.
It really boggles me how Rhino is the only app I know that struggles with picking the correct graphiccard, and has done so on windows 7, 10 and 11. I have wasted much time on solving things like this in the past, but this time it wasn’t a quick thing to fix.
One other thought: have you tried swapping the 3070’s to see if the problem remains the same or transfers to the other PC?
And you don’t mention that you’ve checked the bios and system drivers (as distinct from the graphics card drivers) are the same. (I recently had two smart security lights installed. They looked identical, came in identical packaging and out of the same bin at the supplier. One was problematic - turned out it had older firmware although you wouldn’t have expected that given everything looked the same.)
They are laptops, thus the dual cards, so I’ll try to avoid that. She’ll bring it to my office tomorrow.
I’ll uninstall the drivers and reinstall them.
I guess making laptops with both AMD and Nvidia cards isn’t the smartest move
It can’t, so please stop thinking it can and that Rhino should/can do something about it.
The GPU that ANY application uses for its “graphics” is determined by which driver the OS loads when loading the application into its process space. Which driver gets loaded is determined by several different factors, Rhino NOT being one of them.
OEM specific settings in their configuration software
Graphics Profile settings in Windows->Display settings->Graphics for “hybrid” configs.
Which monitor has been configured as the “Main” display in Windows->Display Settings, when multiple monitors are involved.
The first one works most of the time, but when there are multiple monitors involved, the second and third ones tend to negate any OEM specific settings.
The second is used for “power profiles”, which is used to determine the lesser or greater GPU based on power consumptions. And yes, there are many users out there who want the lesser GPU when they’re out in the field and battery power is more important than speed and better looking pixels. So even if Rhino could force a specific GPU, we’d get quite a bit of push back from those users.
The third one mainly has to do with users who plug monitors into the wrong port, or in some cases certain kinds of USB hubs. Some USB hubs get bound directly to the non-discrete GPU, so plugging a monitor into one of those hubs is like plugging it directly into the non-discrete GPU… When a monitor that is plugged directly into a non-discrete GPU, and is then made to be the “Main” display, then Windows will load the drivers for that GPU (and there’s nothing you can do about it).
Given that, I would …
Remove all OEM specific settings that you’ve made (make sure there are none for either GPU)
Go into Windows->Display settings->Graphics and delete any/all power profiles you see for “Rhino.exe”
Detach all USB display hubs
Reboot
With only the laptop monitor in use, start Rhino
By default, Windows should pick the more advanced GPU and load the appropriate drivers. If it doesn’t, and is still choosing the lesser GPU, then something else is going wrong with the configuration… If so, go back into Windows->Display settings->Graphics and see if a “Power Save” profile got created for “Rhino.exe”… if it did, then it probably means the drivers are crashing for the discrete GPU, so things are falling back to the non-discrete GPU…but I don’t have an answer on why that would be…except for a very special case where you’re remote connecting to the laptop via RDP, and the Windows “display adapter” is showing up as “not a real GPU”… but it doesn’t sound like that’s what you’re doing.
Most users don’t understand the whole “Main” display thing… They think that the monitor they’re looking at is the main display, and therefore everything should happen accordingly…that’s just not how it works. If you do get it working, and you then want to plug in a USB display hub, then make sure the “Main” display is set to the laptop’s screen…if you close the lid on the laptop, Windows will treat that as unplugging a monitor, and you’ll be right back to the same problem… It’s unfortunate, but that’s how some of these hubs work. I have 6 different types of USB display hubs here for testing…none of them act the same…but most of them do bind to the discrete GPU, but it can be port specific, and port-type specific (i.e. USB A vs. USB C).
If you do end up getting things to work, and then later down the line you see things not working again, then it’s probably because a hardware profile change occurred, or the drivers crashed and a “Power Profile” got created… In which case, you’ll need to do the steps above all over again.
If you still cannot get things to work, then I guess I’ll need to do a much deeper dive on the overall configuration and any/all external devices being used.
I have never understood why on some laptops Rhino doesn’t kick in the “use the best gpu” gear on the OS, but on others it just works fine right away. Usually setting up an nVidia driver profile for Rhino does the trick, but on this one unplugging everything and rebooting didn’t do it yet. She will bring the PC over tomorrow so I will dig through it. And I’ll keep you posted.
PS! Can her power mode setting (can’t imagine she has tampered with it, but just in case) make the OS choose to use the lesser graphic card instead?
Only if there is also a “Power Save” profile for the “Rhino.exe” file. There shouldn’t be one, and if there is, then it should be set to “High Performance”… that’s supposed to force the discrete GPU to be used regardless of power settings or usage… but again, this also all depends on what the “Main” display is configured to, and what Windows thinks is attached to the main display.
Right-click on the desktop and select “Display settings”… Then scroll down and look for the “Graphics” section…click on it, and you should be taken to all of the power profiles… look for one for “Rhino V7 Rhino.exe” and see what it’s set to.
We found it, thanks for all great help Jeff!
And it was the new Settings-System-Display-Graphics app preference.
For some reason the OS had added a setting for Rhino and that was sat to Power Saving.
Why and how this happened we don’t know, she surely didn’t do it, and I didn’t know about this new Windows10-11 feature either.
The odd thing is that this overrides the nVidia settings too, so this new OS power/GPU-handling feels a bit immature.
Anyways I post these here for others to find:
(proudly stole from the net)