|
|
|
|
|
by nickpsecurity
3949 days ago
|
|
+1 on Azul. They've pretty much solved it by improving on past methods combining hardware and software. Go could do the same thing. I keep wondering about putting a dedicated FPGA on the memory bus that does nothing but concurrent GC. Have a mechanism to keep the processor (s) and it from stepping on each others' toes. Might work wonders. |
|
1) GC itself operates on virtual addresses.
2) If you want concurrent collection you're probably going to need a read barrier, and that will require some GC / MMU interaction.
The Azul Vega had a lot of interesting features to support GC (and other Java constructs), but the most important by far is the HW read barrier.