Nasal GC Musings: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 4: Line 4:


The goal is not to create a new GC implementation from scratch, but rather to understand and improve upon the existing GC scheme to make it more efficient.  
The goal is not to create a new GC implementation from scratch, but rather to understand and improve upon the existing GC scheme to make it more efficient.  
It is important to emphasize that the very first steps in improving the garbage collection (GC) performance in Nasal should be to fully understand the existing GC implementation. This means studying the existing GC code, understanding how it works, and identifying its strengths and weaknesses. Only by thoroughly understanding the existing GC can we begin to make informed decisions about how to improve it.
Once the existing GC has been fully understood, the next step should be to make the internals of the GC more accessible. This could involve adding more debugging information, providing more detailed logs, or exposing more internal data to external tools. This will make it easier to diagnose GC-related issues and identify potential areas for improvement.
Only after these first two steps have been taken should we consider implementing generational GC support in Nasal.


The idea is that implementing a generational GC, which is a type of GC that separates objects into different generations based on how long they have been in memory, could improve the performance of the GC in Nasal/FlightGear.  
The idea is that implementing a generational GC, which is a type of GC that separates objects into different generations based on how long they have been in memory, could improve the performance of the GC in Nasal/FlightGear.  

Navigation menu