Place newly connected display on a new x-screen

Is it possible to configure a newly connected display (not using xorg.conf) to open a a new x-screen instead of being added to an existing x-screen?

No, Xscreens have to be defined on Xorg start-up, so you need to set up a zaphod-head config
https://download.nvidia.com/XFree86/Linux-x86_64/495.44/README/configmultxscreens.html

Thanks @generix

I have the zaphod-head configuration setup and it works great for all the displays which are connected before the system is started.
The issue I have is when a display is connected after the system is up. In this case the display is added in extended mode to x-screen 0.
My application opens a full screen window on each monitor in order to achieve minimal latency (without tearing) on all connected displays. When a display is added in extended mode it causes tearing/increased latency on my full screen window.

  1. Is the Nvidia driver responsible for adding a newly connected display as an extended display?
  2. Is there any way to “attach” the newly (after the system is started) connected display to an x-screen which is defined in the Xorg file?
  3. Is there a way to disable the detection of newly connected displays?

The nvidia driver should be responsible for adding monitor to screens.
Does it work when you create the screens in advance with the “UseDisplayDevice” or “ConnectedMonitor” option in the device or screen sections?
https://download.nvidia.com/XFree86/Linux-x86_64/495.44/README/xconfigoptions.html

“UseDisplayDevice” doesn’t work for my purpose.

“ConnectedMonitor” option works well, and I always have 3 x-screens even if a monitor is not physically connected. In the option I provide a list of all the available connectors.
Using this option presents a new issue. I do not get any indication when a display is physically connected/disconnected. I am not sure whether the driver actually does any detection when this option is set. Looking at the “Nvidia X server settings” dialog I do not see any change when connecting/disconnecting or when a display with different resolution is connected.

Is there any way to know when a display is connected/disconnected?
And/or to get the display mode of the connected display?

ConnectedMonitor completely bypasses monitor detection and UseDisplayDevice doesn’t really work in a straight-forward, intuitive way, so there’s no really good solution to this. Which driver version are you using?

I am using driver 470.
Is this expected to be improved in 495? or in future driver release?

The best latency is achieved when each physical monitor is setup on its own x-screen. Unfortunately for my application I cannot assume that all monitors are connected at startup