next up previous contents
Next: Synchronisierung Up: Stopping The World Previous: Stopping The World   Inhalt


Unterbrechung nur an konsistenten Punkten

In einer zeitgesteuerten zweistufigen Thread-Bibliothek hat das ausgeführte Programm keinen Einfluß auf die Unterbrechungspunkte. Dies hat zur Folge, daß sich p Threads in Ausführung befinden, i Threads konsistent in Systemaufrufen blockiert sind, und n-p-i Threads wahrscheinlich in inkonsistenten Regionen unterbrochen und suspendiert sind (Abbildung 5.2). Die Transition zur Garbage Collection bedeutet daher, daß n-i Threads bis zu einem GC point vorgerollt werden müssen5.1.

Abbildung 5.2: Konsistente und inkonsistente Threads bei beliebiger Unterbrechungsstrategie: $n-i \gg p$ Threads sind inkonsistent.
\scalebox{0.7}{\includegraphics{nebenlaeufigkeit/util/two-level-inconsistent}}

Stellt man statt dessen sicher, daß Threads ohnehin nur an konsistenten Punkten unterbrochen werden, reicht es aus, $p \ll n-i$ Threads bis zur nächsten Unterbrechung fortlaufen zu lassen (Abbildung 5.3). Eine entsprechende Unterbrechungsstrategie muß durch einen im user space implementierten Scheduler in der VM realisiert werden; es ist daher nicht möglich, auf die generischen Betriebssystembibliotheken zurückzugreifen. Die Autoren der Jalapeño Virtual Machine von IBM Research argumentieren, auf diese Weise die Transition zur Garbage Collection signifikant zu beschleunigen [Alpern et al., 2000].

Abbildung 5.3: Konsistente und inkonsistente Threads bei Unterbrechung nur an konsistenten Punkten: nur p Threads sind inkonsistent.
\scalebox{0.7}{\includegraphics{nebenlaeufigkeit/util/two-level-consistent}}

Allerdings muß man folgendes beachten: Die Implementierung des Schedulers wird hierdurch komplexer. Der Jalapeño Scheduler kann sich auf polling eines hardwareunterstützten, zeitgesteuerten Prozessorbits abstützen. Fehlt eine solche Unterstützung, liegt der Verdacht nahe, daß der Aufwand hier von der Speicherverwaltung in den Scheduler verlagert wird; es folgt also kein Performancegewinn, dafür aber eine gleichmäßigere Verteilung des Verwaltungsaufwands. Entsprechende Studien sind uns nicht bekannt.


next up previous contents
Next: Synchronisierung Up: Stopping The World Previous: Stopping The World   Inhalt

2001-02-28