Improving Nasal: Difference between revisions

Jump to navigation Jump to search
m
Line 134: Line 134:
** http://blogs.msdn.com/b/abhinaba/archive/2009/03/02/back-to-basics-generational-garbage-collection.aspx
** http://blogs.msdn.com/b/abhinaba/archive/2009/03/02/back-to-basics-generational-garbage-collection.aspx
* other dynamic languages like lua or python have GC hooks to customize the GC and to call it on demand: [http://lua-users.org/wiki/GarbageCollectionTutorial], [http://luatut.com/collectgarbage.html]
* other dynamic languages like lua or python have GC hooks to customize the GC and to call it on demand: [http://lua-users.org/wiki/GarbageCollectionTutorial], [http://luatut.com/collectgarbage.html]
* another straightforward optimization would be exposing an API to allocate new objects in a certain generation (GEN0/GEN1) to directly tell the interpreter about the object's lifetime ( until reset/reinit, until aircraft change, timer/frame based).
* marking/reaping could be parallelized using several threads, for each pool - by using write barriers to sync access to naRefs
* marking/reaping could be parallelized using several threads, for each pool - by using write barriers to sync access to naRefs


Navigation menu