Optimize garbage collection with a generational GC#2129
Optimize garbage collection with a generational GC#2129pguyot wants to merge 1 commit intoatomvm:mainfrom
Conversation
2cbb989 to
5203eaf
Compare
|
per Amp:
|
2a1dab6 to
554c7f5
Compare
|
I'm just the messenger.. per amp:
|
|
Codex verified, but was NOT satisfied by one line fix:
|
Running jit tests with AtomVM is now 20% faster. Implement BEAM's `fullsweep_after` `spawn_opt/1` option and `process_flag/2` flag. Also fix `process_flag/2` spec. Also fix a bug where a finishing process in spawning state wasn't properly removed from the processes list. Signed-off-by: Paul Guyot <pguyot@kallisys.net>
554c7f5 to
611ae42
Compare
|
I removed the defensive block that would process pointers from old -> young, which cannot exist as Erlang data structures are immutable. This confused the LLMs. |
You know best, this is way beyond my skill level - llm does suggest cleaning docs up if you back that out.. |
Running jit tests with AtomVM is now 20% faster.
Implement BEAM's
fullsweep_afterspawn_opt/1option andprocess_flag/2flag. Also fixprocess_flag/2spec.These changes are made under both the "Apache 2.0" and the "GNU Lesser General
Public License 2.1 or later" license terms (dual license).
SPDX-License-Identifier: Apache-2.0 OR LGPL-2.1-or-later