2010-07-29 12 views
5

http://managedruntime.org/ è piuttosto scarso su cosa sono esattamente i tarball e perché gli utenti vorrebbero. http://lwn.net/Articles/392307/ ha alcuni dettagli in più, ma l'autore non è sicuro di cosa facciano effettivamente i moduli di gestione della memoria. Apparentemente l'obiettivo di alto livello è quello di ridurre le pause GC, ma sarei interessato a (suggerimenti per) un riassunto di ciò che fa il modulo, e perché/come ciò migliora le cose. Particolarmente impressionante sarebbe un puntatore a qualcosa su quanto impatto hanno queste patch (una valutazione).Cosa contengono effettivamente le patch del kernel di Managed Runtime Initiative e JVM?

risposta

5

Il GC Pauseless di Azul si basa sul sistema di gestione della memoria del sistema operativo sottostante. sull'hardware Azul, questo è stato eseguito dal kernel personalizzato di Azul (Aztec). Su Linux, il sistema di gestione della memoria deve essere in grado di supportare un numero sufficiente di operazioni di gestione della memoria al secondo al fine di tenere il passo con la quantità di spazzatura creata al secondo. Quando gli Azul portarono la Azul JVM su Linux, stabilirono che le sue API di gestione della memoria erano relativamente lente rispetto a quelle di Aztec, se non altro perché le API MM di Linux non erano mai state pensate per supportare qualcosa come PGC. le patch MRT migliorano il numero di operazioni al secondo che il kernel Linux può gestire, e quindi supportano PGC.

Un'analogia sarebbe l'aggiunta di poll/select a Berkeley Sockets e in seguito, nel 2001, quando epoll è stato aggiunto al kernel linux (http://www.xmailserver.org/linux-patches/nio-improve.html).

[disclaimer: anche se io sono una tecnologia esecutiva e attuale consulente tecnico ex ad Azul, non parlo per loro]

+0

sarebbe piaciuto di più (LWN-style) spessore tecnico, ma grazie per il rispondi comunque. – Yang

Problemi correlati