ndisplay - unable to set Render Sync Policy to Nvidia

Hi!

I have been working in a multi-server and multi-screen application with a very basic configuration (just one big video rendered in three PCs with three fHD screen each one) in UE4.27.2. These PCs are quite a beast (latest Xeon + Nvidia RTX A400) but the smoothness is quite horrible, producing noticeable jumps and desyncronization between each PC.
All of this with the sync policy set to Ethernet so I’m now trying to work using the Quadro Sync II set in the machines. The problem is that I have tryed to follow the configuration shown in the documentation but when launching the app, it shows one frame (with the nvidia’s configure driver utility info in the botton-left corner) and it crashes.

This is what the switchboard says (but until now I have no clue of what might be failing):

[17:23:08][I]: Node_02: Program with id f003de9f-2dda-43fc-8e92-97ed6eda4166 exited with returncode -1073740791
[17:23:08][D]: Ended unreal f003de9f-2dda-43fc-8e92-97ed6eda4166
[17:23:08][I]: Node_00: Program with id 2ac5f097-f16d-4d73-9865-cfca8196a231 exited with returncode 0
[17:23:08][D]: Ended unreal 2ac5f097-f16d-4d73-9865-cfca8196a231
[17:23:08][I]: Node_00: retrieve_log with id 0fe313f3-536c-4ccc-ba79-213efa7fadb0 was successfully started
[17:23:08][I]: Node_01: Program with id bd6aa182-30c1-4873-9730-290670d3ccb2 exited with returncode 0
[17:23:08][D]: Ended unreal bd6aa182-30c1-4873-9730-290670d3ccb2
[17:23:08][I]: Node_00: Program with id 0fe313f3-536c-4ccc-ba79-213efa7fadb0 exited with returncode 5
[17:23:08][D]: Ended retrieve_log 0fe313f3-536c-4ccc-ba79-213efa7fadb0
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [61] connect from DESKTOP-8MM85P7 (192.168.1.237)
[17:23:08][D]: Node_00: device status change: CLOSED
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [61] rsync allowed access on module device_logs from DESKTOP-8MM85P7 (192.168.1.237)
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [61] No path specified for module device_logs
[17:23:08][I]: Node_02: retrieve_log with id d50b3158-63c7-4103-aca8-5138decb2e66 was successfully started
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [62] connect from DESKTOP-OUB37OE (192.168.1.236)
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [62] rsync allowed access on module device_logs from DESKTOP-OUB37OE (192.168.1.236)
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [62] No path specified for module device_logs
[17:23:08][I]: Node_02: Program with id d50b3158-63c7-4103-aca8-5138decb2e66 exited with returncode 5
[17:23:08][D]: Ended retrieve_log d50b3158-63c7-4103-aca8-5138decb2e66
[17:23:08][D]: Node_02: device status change: CLOSED
[17:23:08][I]: Node_01: retrieve_log with id 2f8e4d37-a832-4afa-8619-f08cf41ec6f1 was successfully started
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [63] connect from DESKTOP-CDMO9BA (192.168.1.235)
[17:23:08][I]: Node_01: Program with id 2f8e4d37-a832-4afa-8619-f08cf41ec6f1 exited with returncode 5
[17:23:08][D]: Ended retrieve_log 2f8e4d37-a832-4afa-8619-f08cf41ec6f1
[17:23:08][D]: Node_01: device status change: CLOSED
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [63] rsync allowed access on module device_logs from DESKTOP-CDMO9BA (192.168.1.235)
[17:23:08][I]: RsyncServer.monitor: [log] 2023/05/09 17:23:08 [63] No path specified for module device_logs

Any coment or help would be welcome, thanks in advance!

Hi, I have been doing some additional tests to find what might be going on. I created a new empty project, with just a sphere (synchronized) moving from left to right. In the ndisplay configuration there are only two nodes, with one screen each.

With this, I can’t imagine a more basic project than this to test ndisplay.

But! it just keep crashing if the sync policy is set to Nvidia. The Suadro Sync are well setup in the Nvidia control panel. Furthermore, it even crashes when trying to run the app with only the node_0 active in the switchboard configuration.

I have check the logs but they doesn’t offer anything interesting (at least that I can find), and the logs ends in some random line (sometimes it runs for some frames and the logs have some aditional lines):

[2023.06.13-14.29.28:591][ 0]LogDisplayClusterGame: Registering sync object SP_Ball_2.DisplayClusterXform…
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterCluster: Registered sync object: SP_Ball_2.DisplayClusterXform
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterGame: Registering sync object ST_Ball_2…
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterCluster: Registered sync object: ST_Ball_2
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterGame: Native input sync policy: ReplicateMaster
[2023.06.13-14.29.28:591][ 0]LogLoad: Took 0.019134 seconds to LoadMap(/Game/Maps/Level)
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterModule: Starting game…
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterInterception: Display: New scene event
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterGame: Found root actor - NDC_TwoScreenTest1_2
[2023.06.13-14.29.28:591][ 0]LogDisplayClusterEngine: Display: CheckGameStartBarrier - we are no longer out of sync. Restoring Play.
[2023.06.13-14.29.28:609][ 0]LogRHI: Display: ShaderPipelineCache: Paused Batching. 1
[2023.06.13-14.29.28:609][ 0]LogNDisplayLiveLinkSubjectReplicator: Registering sync object.
[2023.06.13-14.29.28:609][ 0]LogDisplayClusterCluster: Registered sync object: NDisplayLiveLinkSyncObject
[2023.06.13-14.29.28:609][ 0]LogPakFile: AllPaks IndexSizes: DirectoryHashSize=285184, PathHashSize=16, EntriesSize=49152, TotalSize=334352
[2023.06.13-14.29.28:609][ 0]LogRHI: Display: ShaderPipelineCache: Resumed Batching. 0
[2023.06.13-14.29.28:609][ 0]LogRHI: Display: ShaderPipelineCache: Batching Resumed.
[2023.06.13-14.29.28:609][ 0]LogInit: Display: Engine is initialized. Leaving FEngineLoop::Init()
[2023.06.13-14.29.28:609][ 0]LogLoad: (Engine Initialization) Total time: 1.79 seconds
[2023.06.13-14.29.28:615][ 0]LogRenderer: Reallocating scene render targets to support 1920x1080 Format 10 NumSamples 1 (Frame:1).
[2023.06.13-14.29.28:632][ 0]LogDisplayClusterInterception: Display: Node ‘Node_0’ received synchronization settings event

How is this possible? How can I find what is going on? nobody is using this technology?

Regards!

Hey @Maxi_sn1 were you ever able to find a solution to this problem? I am having a similar issue.

Hi @mikewright93, sorry for the late reply…
Sadly, the solution we found was… to discard ndisplay for our production. We developed a custom solution using a very basic chat server to comunicate the machines via local network. We couldn’t do frame level sync but it runs far more smoth and gave us far less headaches.

Regards