News:

Precision Simulator update 10.159 (23 November 2022) is now available.
Navburo update 13 (23 November 2022) is now available.
NG FMC and More is released.

Main Menu

Xview becomes "jumpy" over time?

Started by Chris Kilroy, Thu, 3 Mar 2016 23:33

Chris Kilroy

Hi everyone,

I'm using Xview with PSX and, like many in the others in threads I've read here, using the Extrapolation feature is absolutely necessary on my particular setup to achieve smoothness even though the boost server is putting through a continuous 69-72 FPS.

I'm having an interesting problem with extrapolation engaged, however. When the three Image Generators are first fired up, everything's perfect. Then over time, very slowly, all three X-Plane images will start to jump. If I leave it long enough, all three projectors are throwing an image that's easily bouncing +/- 10 degrees in pitch and banking wildly. Note that PSX is perfectly stable, with no discernible bouncing or jumping on any of the instrumentation at all. If I reboot the three IGs (thus loading X-Plane and Xview freshly), things return to normal - at least until 30-45 minutes later when the slight jumping starts up again.

It's worth noting that this effect disappears if extrapolation is disabled, but then my visuals become a chasm of highly noticeable microstutters.

Have any Xview users experienced this with extrapolation turned on and, if so, were you able to solve it?

Thanks so much in advance!

Hardy Heinlin

Hi Chris,

perhaps a heat problem? (Due to the additional extrapolation work -- I don't know how many threads and loops are running in there?) Perhaps the CPU in the scenery machines heat up, triggering some energy saving mode, making it a slide show internally, which also might exceed the computed motion velocity delta values in each time frame beyond a certain maximum ... or something ... -- Just a theory.


Regards,

|-|ardy

Chris Kilroy

#2
Thanks for chiming in, Hardy. I don't think the issue is heat related, as even just a quick restart of X-Plane on the affected IG fixes the problem. Your answer caused me to look into CPU throttling overall, however, and your theory makes perfect sense from that perspective. I've made a few registry changes to enable a couple new Power Management options in Windows so I can force all cores not to throttle during their downtime (since Microsoft's definition of downtime might vastly disagree with the definition those of us trying to run a butter smooth visual system have). I've also enabled Active cooling (vs Passive) on that computer just because it can't hurt.

Now to let the whole thing sit for an hour or two (which is normally when the jumping would become noticeable) and see what happens!

Thanks again for your input and for forcing me to reconsider possible reasons, especially regarding a problem that's occurring on 3 computers that aren't even running PSX! Your support is unparalleled, especially today when most companies have none. Hopefully I'm now headed down the right track, because when PSX and X-Plane play nicely together, it's a thing of beauty...

https://www.youtube.com/watch?v=DP4mJVLHHGQ

Peter Lang

Hi Chris,

I have the same experience with PSX and one Computer with X-Plane. But I did not investigate the problem so far. So here just from memory.

The big jumps you describe I only noticed when on course from A to B. It feels as if you suddenly have a different position in the sky. Huge pitch and slight bank change. The frequency of this behaviour is sometimes more, sometimes less. I cannot say if these jumps increase over the time. Will have a look on it.

What I notice that my system becomes more stuttery the longer I fly from A to B over the time. On training patterns over 1 hour ore more I did not notice these stutters.

But I noticed big differences in the sceneries. Thats where a restart of X-Plane does not always help
E.g. VTCC. Here are several sceneries availabe. The accurate x-plane scenery is very jerky. Sometimes complete different views flash in for the part of a second. The FS conversion runs very smooth, without stutters, hangers and jumps, but parts of the runway and taxiways sometimes disappear (same as in FS - seems to be an internal elevation problem of the scenery itself). The runway itself has a lateral offset.

Just a thought: As I always fly with real weather I very often experinece stops of 1 or more seconds when the weather changes. Is it possible, that these jumps come at the transition of weather areas, even without noticable weather change ?

Btw, your sim looks great.

Peter

GodAtum

Hi Chris,

I will give Xplane + Xview a try over the weekend. My question is does your plane view jump on takeoff? that's one of the reaons I switched to P3D.

Mark

I have been writing a plugin for P3D that performs this same 'extrapolation' for data from PSX to get silky smooth visuals in P3D so I've got a fair idea of the complexity involved and now have something that works very nicely. My theory is that the xplane/xview 'interface' (I'm not familiar with xplane/xview terminology) has accumulated error over time, something I've worked hard to eliminate in my plugin.

Does your PSX run on a separate machine by itself?

I've noticed that any kind of CPU load on the PSX server makes the framerate jump about (evidenced by the bar under the frame rate counter showing any kind of magenta) and the boost variables don't output the correct values during this phase. Also avoid using the UI on the PSX server and make the window really small, so use networked clients to interact with the server.
(Hardy - any chance of a 'headless' mode for PSX?)
(Evidence for the bold statement about incorrect boost values is that I use the boost millisecond counter and boost lat/lon to compute lat/lon speeds and see a massive jump, about 200-500% in speed during any kind of PSX server frame rate jitter so my plugin discards this outlier data. I suspect technical limitations, i.e. Windows/OSX are not real time operating systems with fast & reliable timers/schedulers means this will always be the case.)

-Mark

cavaricooper

#6
Mark-

Interested to hear more.... especially about the "silky smooth" bit.  My P3d feels liquid with native a/c, however, a bit less so when pushing the "camera" through the virtual world.  Hopefully you can share more on your plugin soon.

It is interesting to read your analysis, as the smoothest visuals are obtained with PSX server and P3D on the same machine with just a small portion of the overhead as my view, P3d running over in full screen, and all viewable PSX as clients.  VisualPSX sends the smoothest view when it too runs on the same machine, again in the background.

Best- C
Carl Avari-Cooper, KTPA

Hardy Heinlin

#7
I don't know about Windows, but the system timer in Mac OS X is very accurate. The PSX booster outputs the system time stamp that the booster gets in the moment of the output.

PSX itself relies on the system time to compute its frame time deltas. If you see the PSX booster's flight simulation running smoothly and your external flow not smoothly, the problem does not lie in the system time but perhaps in the way you compute and apply your deltas.

Also be sure that you catch the modulo jump when the counter exceeds 999 and restarts at 0. The delta is never greater than 999, so ...

delta = tNew - tOld;
if ( delta < 0 ) delta += 1000;
Apply delta ...

Also turn off Nagle's algorithm. (And, you know that already, of course, but just to be sure: Don't confuse the physical network delays with the time stamp deltas in the message.)

A pure "headless" PSX is not possible because then it wouldn't run anymore. But you can pan your flight deck into a black area and make the frame very small, and hide the Instructor.


Cheers,

|-|ardy

Peter Lang

Hi Mark,

very interested to hear about your plugin.

On my setup X-Plane / P3D and PSX are running on separate machines.

Peter

jcomm

With it's also slopped runways / taxiways, and very nice weather rendering, a port to Flight Gear would be great to have ....

Mark

Quote from: Hardy Heinlin on Wed,  9 Mar 2016 16:37
I don't know about Windows, but the system timer in Mac OS X is very accurate. The PSX booster outputs the system time stamp that the booster gets in the moment of the output.

PSX itself relies on the system time to compute its frame time deltas. If you see the PSX booster's flight simulation running smoothly and your external flow not smoothly, the problem does not lie in the system time but perhaps in the way you compute and apply your deltas.

Also be sure that you catch the modulo jump when the counter exceeds 999 and restarts at 0. The delta is never greater than 999, so ...

delta = tNew - tOld;
if ( delta < 0 ) delta += 1000;
Apply delta ...

Hi Hardy,

Thanks for the response, I think I really need to log some data and start a new thread before we go too far into hypothesis as it could be a simple bug in my software. To give you an exact idea of the replication scenario:

PC A runs PSX server with boost enabled. (Windows 7)
PC B runs my software which is connected via ethernet to PC A's boost server. (Windows 7)

My software will show perfectly smooth speeds as long as PC A isn't touched for minutes/hours/etc. As soon as I move the view in the PSX server, or zoom in and out, I'll see a massive speed change in my software on PC B. (with magenta appearing in the frame rate bar) This is really where I need to log some data for our benefit as the answer may seem obvious then.

I'm handling the modulo rollover and nagle isn't relevant here as I'm using the boost timestamp rather than generating my own timestamp on reception.

Give me a week or few to start a new thread about this with some actual data, in the meantime I'm quite happy to ignore these wildly high speed values.

Chris - I haven't had any more thoughts regarding your xview issue, have you been able to contact the developer?

Hardy Heinlin

Hi Mark,

what do you mean by "speed"?

When zooming or panning the PSX graphics, the frame rate is low. That's normal. As the frame rate is lower, the frame time deltas are higher. These deltas are applied to all velocity parameters in PSX. So while the frame rate may fluctuate, all speeds in PSX remain constant -- groundspeed, TAS, roll rate, clock etc. pp.


Cheers,

|-|ardy