Sebastian Maier, Timo Hönig, Peter Wägemann, Wolfgang Schröder-Preikschat
{"title":"异步抽象机:多核处理器的抗噪声系统软件","authors":"Sebastian Maier, Timo Hönig, Peter Wägemann, Wolfgang Schröder-Preikschat","doi":"10.1145/3322789.3328744","DOIUrl":null,"url":null,"abstract":"Today's systems offer an increasing number of processor cores, however, the chance to operate them efficiently by dedicating cores to specific tasks is often missed. Instead, mixed workloads are processed by each core which leads to system noise (i.e., interferences, scheduling overheads) and yields subpar performance, only. We therefore propose a system design based on Asynchronous Abstract Machines (AAMs). An AAM features a light-weight scheduler and is dedicated to a specific group of tasks with common characteristics (i.e., shared code and data). It offers an asynchronous, task-based interface for efficient interaction between AAMs. Just like applications are built from AAMs, even the OS itself consists of AAMs that are interfaced by applications via asynchronous messages instead of synchronous system calls. A dedicated OS component, which is aware of all AAMs in the system, is responsible for dynamic and exclusive allocation of cores to AAMs depending on their current workload. Thus, cores rarely switch between heterogeneous workloads of different AAMs. And, at the same time, frequent switches between homogeneous tasks become fast, local operations of an AAM, which do not involve the OS kernel. In this paper, we describe shortcomings of existing operating systems, our new system design concept, and present evaluation results of our prototype implementation.","PeriodicalId":365438,"journal":{"name":"Proceedings of the 9th International Workshop on Runtime and Operating Systems for Supercomputers","volume":"51 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-06-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":"{\"title\":\"Asynchronous Abstract Machines: Anti-noise System Software for Many-core Processors\",\"authors\":\"Sebastian Maier, Timo Hönig, Peter Wägemann, Wolfgang Schröder-Preikschat\",\"doi\":\"10.1145/3322789.3328744\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Today's systems offer an increasing number of processor cores, however, the chance to operate them efficiently by dedicating cores to specific tasks is often missed. Instead, mixed workloads are processed by each core which leads to system noise (i.e., interferences, scheduling overheads) and yields subpar performance, only. We therefore propose a system design based on Asynchronous Abstract Machines (AAMs). An AAM features a light-weight scheduler and is dedicated to a specific group of tasks with common characteristics (i.e., shared code and data). It offers an asynchronous, task-based interface for efficient interaction between AAMs. Just like applications are built from AAMs, even the OS itself consists of AAMs that are interfaced by applications via asynchronous messages instead of synchronous system calls. A dedicated OS component, which is aware of all AAMs in the system, is responsible for dynamic and exclusive allocation of cores to AAMs depending on their current workload. Thus, cores rarely switch between heterogeneous workloads of different AAMs. And, at the same time, frequent switches between homogeneous tasks become fast, local operations of an AAM, which do not involve the OS kernel. In this paper, we describe shortcomings of existing operating systems, our new system design concept, and present evaluation results of our prototype implementation.\",\"PeriodicalId\":365438,\"journal\":{\"name\":\"Proceedings of the 9th International Workshop on Runtime and Operating Systems for Supercomputers\",\"volume\":\"51 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-06-17\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"4\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the 9th International Workshop on Runtime and Operating Systems for Supercomputers\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3322789.3328744\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 9th International Workshop on Runtime and Operating Systems for Supercomputers","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3322789.3328744","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Asynchronous Abstract Machines: Anti-noise System Software for Many-core Processors
Today's systems offer an increasing number of processor cores, however, the chance to operate them efficiently by dedicating cores to specific tasks is often missed. Instead, mixed workloads are processed by each core which leads to system noise (i.e., interferences, scheduling overheads) and yields subpar performance, only. We therefore propose a system design based on Asynchronous Abstract Machines (AAMs). An AAM features a light-weight scheduler and is dedicated to a specific group of tasks with common characteristics (i.e., shared code and data). It offers an asynchronous, task-based interface for efficient interaction between AAMs. Just like applications are built from AAMs, even the OS itself consists of AAMs that are interfaced by applications via asynchronous messages instead of synchronous system calls. A dedicated OS component, which is aware of all AAMs in the system, is responsible for dynamic and exclusive allocation of cores to AAMs depending on their current workload. Thus, cores rarely switch between heterogeneous workloads of different AAMs. And, at the same time, frequent switches between homogeneous tasks become fast, local operations of an AAM, which do not involve the OS kernel. In this paper, we describe shortcomings of existing operating systems, our new system design concept, and present evaluation results of our prototype implementation.