Streaming system scheduling for Xeon Phi
Plánování v proudových systemech na Xeonu Phi
diploma thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/90474Identifiers
Study Information System: 192531
Collections
- Kvalifikační práce [10691]
Author
Advisor
Referee
Kruliš, Martin
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software Systems
Department
Department of Software Engineering
Date of defense
6. 9. 2017
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Very good
Keywords (Czech)
plánování, proudové systémy, Bobox, Xeon PhiKeywords (English)
scheduling, streaming systems, Bobox, Xeon PhiPlánování procesů v oblasti operačních systémů je velmi dobře prozkoumaný problém na tradičních architekturách (NUMA, SMP). Bohužel nepracuje správně na nově vzniklých architekturách, speciálně na procesoru Intel Xeon Phi. Proto jsme shromáždili všechny dostupné informace o této architektuře. Nedostupné informace jsme se pokusili zjistit pomocí vlastních testů. Především jsme se soustředili na věci související s architekturou jádra a pamětí, jelikož to jsou nejdůležitější části pro tvorbu plánovače. Na základě výsledků jsme navrhli vylepšení pro stávající plánovač. Při ověřování navrhnutých vylepšení jsme zjistili, že problém není v plánovači, ale v návrhu, jakým se provádí paralelizace operátorů uvnitř Boboxu. Proto jsme navrhli nějaká vylepšení pro paralelizaci operátorů a jedno z nejjednodušších naimplementovali jako příklad a otestovali.
Task scheduling in operating system area is a well-known problem on traditional system architectures (NUMA, SMP). Unfortunately, it does not perform well on emerging many-core architectures, especially on Intel Xeon Phi. We collected all publicly available information about the architecture of Xeon Phi. After that, we benchmarked the Xeon Phi in order to find the missing information about its architecture. We focused especially on the information about cores and memory controllers. These are the most important parts when designing a scheduler. Based on the results, we proposed improvements for scheduling algorithm in the Bobox (an experimental streaming system). However, we found that the biggest problem is not in the scheduling algorithm, but in the design of operators' parallelization. Therefore, we proposed improvements to the parallelization and tested one of the proposals.