You are not logged in.

#1 2019-07-18 14:53:32

shak
Member
Registered: 2009-03-16
Posts: 405

Nvidia optimus clarification

Hi guys . I need clarification regarding mvidia optimus in archlinux. To my understanding there are a few ways to make it work.

In my case i used the proprietary driver and edited the xinitrc accordingly. Then because of the tearing of the screen i enabled prime sync as per the wiki. My question is since the prorieteray driver cant dynamically switch gpus, why does one need to use the technology ? And second does the fact i enabled prime sync will affect performance? If i just disable intel gpu from bios will there be any need to follow the same procedure for nvidia optimus? Will it have any perforamance gains in this case? Which option will offer the best performance for gaming?

Thanks a lot

Last edited by shak (2019-07-18 14:54:52)

Offline

#2 2019-07-18 19:07:23

Xabre
Member
From: Serbia
Registered: 2009-03-19
Posts: 750

Re: Nvidia optimus clarification

Optimus works by offloading rendered image from discrete GPU to integrated GPU. If you could disable intel graphics, you wouldn't need optimus to begin with.

Offline

#3 2019-07-18 20:39:49

shak
Member
Registered: 2009-03-16
Posts: 405

Re: Nvidia optimus clarification

Xabre wrote:

Optimus works by offloading rendered image from discrete GPU to integrated GPU. If you could disable intel graphics, you wouldn't need optimus to begin with.

Yes i cant disable it through bios. Do you happen to know if by using the proprietary nvdiai driver and enabling prime sync if it has any effect on the performance than not enabling prime?

Offline

#4 2019-07-18 20:45:01

Xabre
Member
From: Serbia
Registered: 2009-03-19
Posts: 750

Re: Nvidia optimus clarification

In general, you need to have  some sort of sync cause of offloading, or you can experience bad tearing issues

Offline

#5 2019-07-22 18:20:49

shak
Member
Registered: 2009-03-16
Posts: 405

Re: Nvidia optimus clarification

Xabre wrote:

In general, you need to have  some sort of sync cause of offloading, or you can experience bad tearing issues

Is this also needed when using nvidia-xrun ?

Offline

#6 2019-07-27 19:58:09

Xabre
Member
From: Serbia
Registered: 2009-03-19
Posts: 750

Re: Nvidia optimus clarification

On laptops with hybrid graphics, be it Intel-Nvidia or Intel-AMD or any other combination, discrete gpu is hardwired to intergrated gpu, it renders the image then offloads it to integrated gpu to actually display it. For the picture to be displayed properly, there needs to be some form of syncronizaton. You just can't get around it. That's how hardware is designed and made to work.

I fail to understand what is so confussing there for you

Offline

#7 2019-07-27 20:59:47

seth
Member
Registered: 2012-09-03
Posts: 51,237

Re: Nvidia optimus clarification

It's not *that* simple because some systems under the "Optimus" label provide a GPU CRTC, ie. a VGA device which might or not have an output (typically the HDMI port, the idea probably being that this is a stationary situation, so you can use the GPU "for free")
In that case the GPU can render directly to that output w/o any requirement to cross the IGP.
There are also variants where you can disable the IGP in the BIOS and the GPU is then used and soft-wired to the internal display.

That's not strictly the optimus™©® idea, but the notebooks will still have that sticker…

However, as long as you want to use the GPU to display things on an output currently controlled by the IGP, the GPU frames need to be copied to the IGP and then scanned out by that. There's no way around that.
If that process isn't sync'd or rather fenced, you'll get tearing. If the IGP isn't sync'd to the vblank interval of the oputput, you'll get another level of tearing (unrelated to optimus) and you can actually have two steady tear-lines.

This has no significant impact on the performance™ (the copying is cheap and fast) but syncing limits the framerate (to the output Hz)
However since the optimus indirection resembles triple buffering, there should™ (ideally) be no further fps drop (ie. if the game can render @50fps you'll get 50fps and not 30fps) - on the downside triple buffering means a slight (<= 1 frame, <= 16.6ms @60Hz) input latencency increase.

Offline

Board footer

Powered by FluxBB