On Tue, 4 Aug 2009, leee wrote:

> One of the big problems I had with FG was its pseudo asynchronous
> operation, which still meant that the rates at which you could run
> things like the FDM, autopilot and Nasal were effectively limited
> by the frame rate and which could lead to an aircraft being stable
> on one system but unstable on another.  I would really like to see
> these subsystems running on their own cores, or even more
> preferably, on their own networked hardware, so that I could run
> them at much higher and guaranteed rates.

Moving these tasks into different threads would only bring you a cart load 
of indeterminism due to the whims of the OS scheduler, page faults, 
interrupts, bus contention or network latency etc etc..

The crucial observation you missed here is that these tasks need to run 
interleaved at high (120+ Hz) guaranteed rates in /simulated/ 
time not necessarily in real time. (Sampling pilot inputs needs to be done 
at what rate? 30Hz?).
Interleaving them in one thread is really the very best you can do 
assuming your processor core is fast enough (and I'd be surprised if it 
isn't, e.g. JSBSim needs in the order of 1% of the capacity of a 
not so current core to run a typical model in real-time).

IMHO the one important threading benefit is if we could get all of the 
rendering off the main simulation loop, meaning that the model runs 
independent of the presentation. (Ok, expensive environment eye candy 
like the traffic manager or wild fire CA would also be beneficial to move 
into threads - but they don't have tight synchronization needs wrt the 
main aircraft.)

Apart from that the potential for improvements with threading I can see is 
in the rendering system, and that's perhaps a more general OSG and OpenGL 
vendor playing field than a FlightGear one.


Anders Gidenstam
WWW: http://www.gidenstam.org/FlightGear/

Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
Flightgear-devel mailing list

Reply via email to