Slow performance using eGPU with lid closed

Qu Wenruo quwenruo.btrfs at
Mon Apr 29 13:04:33 UTC 2019

On 2019/4/29 下午6:41, Michel Dänzer wrote:
> On 2019-04-28 2:02 a.m., Qu Wenruo wrote:
>> Hi,
>> When tweaking eGPU under Linux, I hit one strange behavior.
>> The integrated GPU is Intel HD630, using the DDX driver.
>> The eGPU is an RX580, using amdgpu driver. Using thunderbolt 3
>> connection. (4x lanes)
>> All 2 monitors are connected to the eGPU, using DP and HDMI.
>> At first glance, it works with some quirks (hot plug doesn't work, hot
>> unplug crash the kernel), but at least it works without any config.
>> Also tested DRI_PRIME=1 with offload for games, it works well playing
>> games in the laptop display.
>> But when I try to close the lid, the external monitors get very laggy.
>> (WM is muffer from cinnamon)
>> My guess is, without any config, the external monitor is still rendered
>> by the Intel GPU, as all monitor shares the same screen space.
>> And when the lid is closed, eGPU is forced to its lowest performance.
> It's because the Present extension (used for presentation with DRI3)
> only supports the primary GPU (as far as Xorg is concerned), in your
> case the Intel one. When all outputs of the primary GPU are disabled,
> Present cannot use any of them for timing purposes, so it falls back to
> a 1 Hz timer for presentation.

Is it possible to disable Intel one completely at X start time?

Just regular xorg.conf.d with amdgpu only device section?


> Potential workarounds:
> Disable DRI3.
> Force-enable the laptop's internal output while the lid is closed, e.g.
> using xrandr.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the xorg mailing list