Yuanhai Zhang , Shuai Zhao , Gang Chen , Haoyu Luo , Kai Huang
{"title":"Timing-accurate scheduling and allocation for parallel I/O operations in real-time systems","authors":"Yuanhai Zhang , Shuai Zhao , Gang Chen , Haoyu Luo , Kai Huang","doi":"10.1016/j.sysarc.2024.103158","DOIUrl":null,"url":null,"abstract":"<div><p>In industrial real-time systems, the I/O operations are often required to be both <em>timing predictable</em>, i.e., finish before the deadline to ensure safety, and <em>timing accurate</em>, i.e., start at or close to an ideal time instant for optimal I/O performance. However, for I/O-extensive systems, such strict timing requirements raise significant challenges for the scheduling of I/O operations, where execution conflicts widely exist if the I/O operations are scheduled at their ideal time instants. Existing methods mainly focus on one I/O device and apply simple heuristics to schedule I/O operations, which cannot effectively resolve execution conflicts, hence, undermining both timing predictability and accuracy. This paper proposes novel scheduling and allocation methods to maximize the timing accuracy while guaranteeing the predictability of the system. First, on one I/O device, a fine-grained schedule using Mixed Integer Linear Programming (MILP) is constructed that optimizes the timing accuracy of the I/O operations. Then, for systems containing multiple I/O devices of the same type, two novel allocations are proposed to realize parallel timing-accurate I/O control. The first utilizes MILP to further improve the timing accuracy of the system, whereas the second is a heuristic that provides competitive results with low overheads. Experimental results show the proposed methods outperform the state-of-the-art in terms of both timing predictability and accuracy by 37% and 25% on average (up to 5.56x and 33%), respectively.</p></div>","PeriodicalId":50027,"journal":{"name":"Journal of Systems Architecture","volume":"152 ","pages":"Article 103158"},"PeriodicalIF":3.7000,"publicationDate":"2024-05-06","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Systems Architecture","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S138376212400095X","RegionNum":2,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, HARDWARE & ARCHITECTURE","Score":null,"Total":0}
引用次数: 0
Abstract
In industrial real-time systems, the I/O operations are often required to be both timing predictable, i.e., finish before the deadline to ensure safety, and timing accurate, i.e., start at or close to an ideal time instant for optimal I/O performance. However, for I/O-extensive systems, such strict timing requirements raise significant challenges for the scheduling of I/O operations, where execution conflicts widely exist if the I/O operations are scheduled at their ideal time instants. Existing methods mainly focus on one I/O device and apply simple heuristics to schedule I/O operations, which cannot effectively resolve execution conflicts, hence, undermining both timing predictability and accuracy. This paper proposes novel scheduling and allocation methods to maximize the timing accuracy while guaranteeing the predictability of the system. First, on one I/O device, a fine-grained schedule using Mixed Integer Linear Programming (MILP) is constructed that optimizes the timing accuracy of the I/O operations. Then, for systems containing multiple I/O devices of the same type, two novel allocations are proposed to realize parallel timing-accurate I/O control. The first utilizes MILP to further improve the timing accuracy of the system, whereas the second is a heuristic that provides competitive results with low overheads. Experimental results show the proposed methods outperform the state-of-the-art in terms of both timing predictability and accuracy by 37% and 25% on average (up to 5.56x and 33%), respectively.
期刊介绍:
The Journal of Systems Architecture: Embedded Software Design (JSA) is a journal covering all design and architectural aspects related to embedded systems and software. It ranges from the microarchitecture level via the system software level up to the application-specific architecture level. Aspects such as real-time systems, operating systems, FPGA programming, programming languages, communications (limited to analysis and the software stack), mobile systems, parallel and distributed architectures as well as additional subjects in the computer and system architecture area will fall within the scope of this journal. Technology will not be a main focus, but its use and relevance to particular designs will be. Case studies are welcome but must contribute more than just a design for a particular piece of software.
Design automation of such systems including methodologies, techniques and tools for their design as well as novel designs of software components fall within the scope of this journal. Novel applications that use embedded systems are also central in this journal. While hardware is not a part of this journal hardware/software co-design methods that consider interplay between software and hardware components with and emphasis on software are also relevant here.