Well, reading up more on the Unity Burst compiler and it looks like this is exactly what they're doing. Non-GC subset of C#.. So structs only, data stored mostly within the "Job" and on the stack (and presumably some "engine data" you can access safely (but not own or delete)?)https://twitter.com/ssylvan/status/976233614349225984 …
I kind of wonder whether anyone has actually tried putting a zero-latency GC into practice in games. If pauses are so bad you’re willing to sacrifice any amount of throughput to eliminate them, the GC literature has you covered…
-
-
Write a concurrent mark/sweep GC that uses read and write barriers to maintain the tri-color invariant, and have no compaction or stop the world other than to rebalance TLABs (like jemalloc). Bad throughput, but shouldn’t have any pauses…
-
For Unity, it's a mix of JIT/GC perf due to Mono but a zero GC is not the graal. The critical part is to efficiently work in batch, in //, safely, with proper data layout maximizing cache coherency + noalias aware codegen: that's where burst & the job system work very well here
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.