On 11.05.2012 10:21, Renk Thorsten wrote:
> The problem with that consequence is: As you switched all loops off,
> the Nasal part of Advanced Weather ceased to run completely and all
> that's left is the same cloud-generating functionality which is
> responsible for Basic Weather (C++ and shader work). If killing all
> Nasal did not solve the problems, then they can't be caused by Nasal,
> and porting to C++ will not fix them.

Not quite true. A significant part of Nasal-related frame rate impact is 
caused by garbage collection. Its delay/jitter only depends on the 
number of Nasal objects and their references which need to be searched. 
Increasing the number of Nasal objects (code+data) existing in memory 
also increases the delay.

The amount of Nasal code which is actually being executed only 
influences the g/c frequency, i.e. whether the effect is visible every 
few seconds vs several times per second.

This is why we are loading large Nasal modules, like advanced weather, 
on demand only (= only when feature enabled). We're not unloading 
objects when disabling a feature though - this usually requires 
restarting fgfs. This should be remembered when comparing such features 
(i.e. restart fgfs after disabling advanced weather etc).

cheers,
Thorsten

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to