Multichannel behaviour

Any issues, problems or troubleshooting topics related to the additional features present in the Prepar3D Professional Plus client application.
Post Reply
SorensenDK2
Posts: 15
Joined: Wed May 27, 2020 1:19 pm

Multichannel behaviour

Post by SorensenDK2 »

Hi all.

I am in the process of updating my 3xprojector 220 degress visuals, from one IG to two or maybe three.

For this I would like to use P3DV5 Multichannel, as the syncronization is better than with Wideview, to my understanding.

So I have set up a test environment with two PC´s. One is I9-11900K (4800 mhz) and RTX 3080ti, the other is I7-8700K (O/C to 4800 mhz) with RTX2080tu. Funny and slighty weird story, is that when run individually, they perform within 3-5 FPS of each other in any situation!? I would have thought the I9-11900K would be doing better, but ofcourse they run same clockspeed.

So I installed two airport add-ons, EPWA and EKCH. In EPWA I would have appx 120 FPS/ 1 window - 65 FPS with 2 windows and 40 FPS with 3 windows - when run individually. That corresponds fine with my previous experiences, having run a single IG for a couple of years.

If I then have the Host PC (I9-11900K) run 2 windows, and 1 on the Client, I would have appx. 60 FPS on both PC. That is expected, ans the missing genlock means that the slowest PC will be deciding the FPS. All good so far!

Then - If I switch to a another viewgroup, which only uses 2 windows - one on host and one on the client, I would expect both PC´s to run appx 120 FPS or at least the same FPS as the slowest PC. But then the client halves to appx 45 - 50 with the host running 90 - 100. Why does it do that??

in EKCH I also get 60/60 with 2 windows on host/1 on client - BUT, then I installed Aerosoft EGLL, and suddently I had 50-60/25-30 (sometimes 15) with the 2 windows on host and 1 on client!? Its not because the EGLL is harder on the PCs than EPWA, which puzzles me. I tried lowering the setting, to have superior performance over EPWA, but still lower FPS on the client. I even tried disabling EGLL on the client PC, so that it should only render the default, but that was even worse... Back in EKCH / EPWA - again 50-60/50-60....

I would have thought it was possible to make three similar PC´s and then have them run one window each, with full FPS on buth host and clients, even without genlock, which I though meant that if you have to non-similar PC, one highend and one lowend, then you would only get performance of the lowend.

Can anyone throw me a stick and some wise words on how this works, and maybe just confirm that if you dont use GPU with genlock, multichannel is no-go? Or can I do something to get things running better?

I thank you all in advance for your help.

/Bjarne
User avatar
Beau Hollis
Lockheed Martin
Posts: 2452
Joined: Wed Oct 06, 2010 3:25 pm

Re: Multichannel behaviour

Post by Beau Hollis »

Multichannel is designed for the server to handle user input and driver the simulation, while clients serve as the traditional IG channels. In the traditional host/IG framework it might be better to think of the server as the host rather than one of the IG channels.

As it was originally designed, the server sends out the network packet for each frame, and clients generate the scene and report back to the server. Once all channels have responded, the server sends another message indicating that all clients may display their frames. Genlock in the HW is to ensure that all the displays are flipping at the same time, but either way, P3D is trying to keep all the channels synchronized. I don't recall if we provide an option to disable that. In either case, the software follows the same general rules regardless of whether or not the displays are synchronized. The same is true on single machine where genlock would be needed to ensure that all monitors/projectors are in sync.

In this model, the server will almost always be displaying frames first. By design the server would not have its display included in the view group. When then the view group is activated, it will display one wide FOV view that tries to represent the entire view group so the the operator on that system can see everything and so that objects are visible and animations are triggered. It is still possible to assign view group views to the server displays but the server views won't necessarily be in sync with the clients in terms of frame timing.
Beau Hollis
Prepar3D Software Architect
odeliamarx
Posts: 1
Joined: Fri Feb 11, 2022 1:34 am

Re: Multichannel behaviour

Post by odeliamarx »

Thank you. Now I understand more.
SorensenDK2
Posts: 15
Joined: Wed May 27, 2020 1:19 pm

Re: Multichannel behaviour

Post by SorensenDK2 »

Hi Beau

Thank you very much for your reply.

Your post certainly explains some things, but I am not sure I understood it all.

How would a multichannel setup be configured correctly? One Server/Host without visuals, and the three IG with a viewgroup configured? And would these then act the same way as on a single IG with three displays connected?

As I understand your answer the genlock is not something specific for multichannel, as it just coordinate the timing between the different displays, be it in multi- or singlechannel? Correct?

Best Regards
Bjarne Sorensen
User avatar
Beau Hollis
Lockheed Martin
Posts: 2452
Joined: Wed Oct 06, 2010 3:25 pm

Re: Multichannel behaviour

Post by Beau Hollis »

How would a multichannel setup be configured correctly? One Server/Host without visuals, and the three IG with a viewgroup configured? And would these then act the same way as on a single IG with three displays connected?
Yes. The server will still show the view group in the UI, and when you activate it you should see a single wide fov view that acts as the controller for the entire group.
As I understand your answer the genlock is not something specific for multichannel, as it just coordinate the timing between the different displays, be it in multi- or singlechannel? Correct?
Yes. We aren't doing anything specific in the software to detect and activate genlock hw features . If you have HW that supports genlock, there should be driver utilities that you can use to enable and mange it. You may need to enable vsync and/or variable refresh rate in our settings to play nicely with the driver.
Beau Hollis
Prepar3D Software Architect
Post Reply