Funktional dedizierte Nutzung von Prozessorkernen zur Interferenzreduktion von Betriebssystemoperationen

Functionally dedicated use of processor cores for interference reduction of operating-system operations

Please always quote using this URN: urn:nbn:de:bvb:29-opus4-95813
  • Ein Betriebssystem bietet seinen Benutzerinnen und Benutzern eine Umgebung, in der sie Programme bequem und effizient ausführen können. Die Bereitstellung einer derartigen Umgebung geht mit verschiedenen Kosten einher. Beispielsweise fallen Laufzeitkosten beim Auslösen eines Betriebssystemaufrufs an. Zusätzlich zu diesen direkten Kosten entstehen auch indirekte Kosten, die nach dem Betriebssystemaufruf auf die Anwendung zukommen. Die indirekten Kosten entstehen durch die gemeinsame Nutzung von beschränkten prozessorlokalen Ressourcen, wie beispielsweise Zwischenspeicher. Aufgrund des beschränkten Pufferplatzes müssen Anwendungsdaten bei einem Betriebssystemaufruf aus denEin Betriebssystem bietet seinen Benutzerinnen und Benutzern eine Umgebung, in der sie Programme bequem und effizient ausführen können. Die Bereitstellung einer derartigen Umgebung geht mit verschiedenen Kosten einher. Beispielsweise fallen Laufzeitkosten beim Auslösen eines Betriebssystemaufrufs an. Zusätzlich zu diesen direkten Kosten entstehen auch indirekte Kosten, die nach dem Betriebssystemaufruf auf die Anwendung zukommen. Die indirekten Kosten entstehen durch die gemeinsame Nutzung von beschränkten prozessorlokalen Ressourcen, wie beispielsweise Zwischenspeicher. Aufgrund des beschränkten Pufferplatzes müssen Anwendungsdaten bei einem Betriebssystemaufruf aus den Zwischenspeichern weichen und stehen der Anwendung erst nach erneuter Einlagerung zur Verfügung. Betriebssystem und Anwendung konkurrieren um die gemeinsam genutzten prozessorlokalen Ressourcen. Die daraus resultierende Interferenz verursacht zusätzliche Laufzeitkosten. Zur Senkung der zusätzlichen Kosten wird im Rahmen dieser Dissertation riDesign, eine Betriebssystemarchitektur zur Reduktion von Interferenz, vorgestellt. Die grundlegende Idee hinter riDesign ist die Partitionierung der Prozessoren zwischen Betriebssystem und Anwendungen, was die Interferenz auf ein Mindestmaß reduziert. Begünstigt wird diese Trennung durch den aktuellen Trend in der Prozessorentwicklung, mehrere Prozessoren auf einem Prozessorchip zu kombinieren. Derartige Mehrkernprozessoren zeichnen sich unter anderem durch geringe Kommunikationskosten zwischen den einzelnen Prozessoren aus. Die Anzahl der Prozessorkerne pro Prozessorchip liegt aktuell im niedrigen zweistelligen Bereich. Allerdings ist innerhalb der nächsten Jahre ein starker Anstieg der Kernanzahl zu erwarten. Das OctoPOS-Betriebssystem wurde im Rahmen dieser Dissertation entsprechend der Konzepte der riDesign-Betriebssystemarchitektur umgebaut und daraus entstand das Betriebssystem OctoPOS-RI. Eine Analyse der bestehenden Betriebssystemschnittstelle und der Subsysteme von OctoPOS hinsichtlich ihrer Interferenzeigenschaften bildet die Grundlage für die Umsetzung von OctoPOS-RI. Die Umsetzung der Einplanung und Einlastung wird im Detail vorgestellt und mit der bestehenden Version in OctoPOS verglichen. Mit Mikrobenchmarks werden einige Basisfunktionen von OctoPOS-RI und OctoPOS analysiert und die Ergebnisse gegenübergestellt. In weiteren Experimenten wird der Einfluss von OctoPOS-RI auf das Verhalten verschiedener Anwendungen quantitativ evaluiert und mit den Ergebnissen von OctoPOS verglichen. Dabei zeigt sich, dass die getesteten Anwendungen unterschiedlich auf die veränderten Rahmenbedingungen in OctoPOS-RI reagieren. Mit Hilfe einer synthetischen Anwendung wird gezeigt, welche Faktoren für Anwendungen entscheidend sind, damit sie neben der reduzierten Interferenz auch von Laufzeitvorteilen profitieren können.show moreshow less
  • An operating system provides its users with an environment which allows them to efficiently and conveniently run programs. But this environment comes at some costs. The initiation of a system call yields direct costs, e.g. runtime costs. But there are also indirect costs for which the application has to pay after the system call. The indirect costs stem from the shared use of limited processor-local resources, such as caches. Due to the limited size of the caches, application data has to be evicted during a system call in order to use the cache. Operating systems and applications compete for these processor-local resources. This leads to interference and additional runtime. In order toAn operating system provides its users with an environment which allows them to efficiently and conveniently run programs. But this environment comes at some costs. The initiation of a system call yields direct costs, e.g. runtime costs. But there are also indirect costs for which the application has to pay after the system call. The indirect costs stem from the shared use of limited processor-local resources, such as caches. Due to the limited size of the caches, application data has to be evicted during a system call in order to use the cache. Operating systems and applications compete for these processor-local resources. This leads to interference and additional runtime. In order to reduce the costs which go along with the described interference, this thesis presents riDesign, an operating-system architecture for reduced interference. The basic idea is to partition the processors between operating system and application in order to minimize the interference between them. It also comes with the positive side effect of reduced contention due to the decreased amount of participants. riDesign benefits from the current trend in processor development to integrate several processors into one piece of silicon. These multicore processors are characterised by low communication costs for inter processor communication, among other things. A multicore processor currently only contains processors in a low double-digit range, but in the near future an increase in core numbers is expected. For this thesis the operating system OctoPOS was adapted to the concepts of riDesign and so the resulting operating system OctoPOS-RI evolved. A detailed analysis of OctoPOS’ interface and subsystems regarding the interference properties laid the basis for the implementation of OctoPOS-RI. The design of the scheduling and dispatching subsystem is presented in detail and is compared with OctoPOS. The basic functions of OctoPOS-RI and OctoPOS are analysed with several microbenchmarks. Further experiments show the impact of OctoPOS-RI on the behavior of some applications. It becomes apparent that the tested applications react differently to the changed conditions. With the help of a synthetic application, the key factors for improved application performance could be identified.show moreshow less

Download full text files

Export metadata

Additional Services

Share in Twitter Search Google Scholar Statistics
Metadaten
Author:Jens Schedel
URN:urn:nbn:de:bvb:29-opus4-95813
Referee:Wolfgang Schröder-Preikschat
Document Type:Doctoral Thesis
Language:German
Year of Completion:2018
Embargo Date:2018/03/21
Publishing Institution:Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU)
Granting Institution:Friedrich-Alexander-Universität Erlangen-Nürnberg (FAU), Technische Fakultät
Date of final exam:2018/03/07
Release Date:2018/04/03
Tag:Interferenzreduktion
SWD-Keyword:Betriebssystem; Mehrkernprozessor; Lokalität; Interferenz; Parallelverarbeitung; Kooperation
Institutes:Technische Fakultät / Department Informatik
CCS-Classification:D. Software / D.4 OPERATING SYSTEMS (C) / D.4.7 Organization and Design
Dewey Decimal Classification:0 Informatik, Informationswissenschaft, allgemeine Werke / 00 Informatik, Wissen, Systeme / 000 Informatik, Informationswissenschaft, allgemeine Werke
open_access (DINI-Set):open_access
Licence (German):Keine Creative Commons Lizenz - es gilt der Veröffentlichungsvertrag und das deutsche Urheberrecht