falahati / NvAPIWrapper

NvAPIWrapper is a .Net wrapper for NVIDIA public API, capable of managing all aspects of a display setup using NVIDIA GPUs
GNU Lesser General Public License v3.0
313 stars 55 forks source link

Geforce MX150 #60

Closed yoyos closed 2 years ago

yoyos commented 2 years ago

My laptop has two GPUs:

image

I'm trying to make my laptop screen and HDMI plugged screen recognized by NvAPIWrapper but it just sees nothing.

PhysicalGPU.GetPhysicalGPUs() seems to see my GPU image

Display.GetDisplays() sees nothing image

PathInfo.GetDisplaysConfig() Nothing to show

Is this normal ? I'm sure you already have an answer ;)

falahati commented 2 years ago

depends on the connection of devices. for a laptop using NVIDIA Optimus, the main display is usually drived by the iGPU rather than the dGPU. If your HDMI connection is also connected to the iGPU, it is expected to see no display device when using the NVIDIA API.

You can check this by opening the NVIDIA Control panel and checking the list of connected display devices.

For example, check out my setup, I have a laptop with an iGPU and an NVIDIA dGPU connected to two additional displays, one by the Thunderbolt port which is driven by the Intel Chipset and therefore the iGPU, and the other by the DisplayPort connected directly to the dGPU. The laptop's own display is connected to the iGPU and I can't change that. As you can see, NVIDIA Control Panel only sees the one display that is connected directly to it and none other:

image
falahati commented 2 years ago

closed due to inactivity

yoyos commented 2 years ago

Thanks @falahati

I think I just have no port directly linked to dGPU like you say.

In Nvidia control pannel, there is no display menu like you:

image

Have a nice day

falahati commented 2 years ago

thank you for confirming the source of the problem. nice day to you too