Adam Kostrzewa, Sebastian Tobuschat, Selma Saidi, R. Ernst
{"title":"Supporting Suspension-based Locking Mechanisms for Real-Time Networks-on-chip","authors":"Adam Kostrzewa, Sebastian Tobuschat, Selma Saidi, R. Ernst","doi":"10.1145/2997465.2997466","DOIUrl":"https://doi.org/10.1145/2997465.2997466","url":null,"abstract":"In the majority of safety critical systems, suspension-based locking protocols e.g. MPCP, OMLP, FMLP are used to efficiently and safely coordinate accesses to shared resources. However, existing architectures do not support such arbitration for Networks-on-Chip (NoCs) although they must resolve conflicts between concurrent transmissions. Enabling suspensions requires not only predictable transmission latencies but also to provide feedback about the global state of the interconnect which is difficult in NoCs where arbitration is done locally and independently in routers. This leads to pessimistic formal guarantees, decreased utilization and unfulfilled design requirements as network blocking unnecessarily propagates to other tasks scheduled on cores. In this work, we evaluate existing NoC architectures and propose extensions allowing to benefit from real-time tasks multithreading to increase performance while achieving predictability. Consequently, we describe how to improve the processor's utilization and more importantly, how to consistently reach lower worst case latencies for other tasks running in the system. We demonstrate the effectiveness of our approach using formal analysis and scenario-based simulation results.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133825207","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Time-sensitive Software-defined Network (TSSDN) for Real-time Applications","authors":"N. Nayak, Frank Dürr, K. Rothermel","doi":"10.1145/2997465.2997487","DOIUrl":"https://doi.org/10.1145/2997465.2997487","url":null,"abstract":"Cyber-physical systems (CPS), like the ones used in industrial automation systems, are highly time-sensitive applications demanding zero packet losses along with stringent real-time guarantees like bounded latency and jitter from the underlying network for communication. With the proliferation of IEEE 802.3 and IP networks, there is a desire to use these networks instead of the currently used field-buses for time-sensitive applications. However, these networking technologies, which originally were designed to provide best effort communication services, lack mechanisms for providing real-time guarantees. In this paper, we present Time-Sensitive Software-Defined Networks (TSSDN), which provide real-time guarantees for the time-triggered traffic in time-sensitive systems while also transporting non-time-sensitive traffic. TSSDN provides these guarantees by bounding the non-deterministic queuing delays for time-sensitive traffic. To this end, it exploits the logical centralization paradigm of software-defined networking to compute a transmission schedule for time-sensitive traffic initiated by the end systems based on a global view. In particular, we present various Integer Linear Program (ILP) formulations that solve the combined problem of routing and scheduling time-triggered traffic. Moreover, we show that end systems can comply with a given schedule with high precision using user-space packet processing frameworks. Our evaluations show that TSSDN has deterministic end-to-end delays (≤ 14 μs on our benchmark topology) with low and bounded jitter (≤ 7 μs).","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132198716","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"State-based Communication on Time-predictable Multicore Processors","authors":"R. B. Sorensen, Martin Schoeberl, J. Sparsø","doi":"10.1145/2997465.2997480","DOIUrl":"https://doi.org/10.1145/2997465.2997480","url":null,"abstract":"Some real-time systems use a form of task-to-task communication called state-based or sample-based communication that does not impose any flow control among the communicating tasks. The concept is similar to a shared variable, where a reader may read the same value multiple times or may not read a given value at all. This paper explores time-predictable implementations of state-based communication in network-on-chip based multicore platforms through five algorithms. With the presented analysis of the implemented algorithms, the communicating tasks of one core can be scheduled independently of tasks on other cores. Assuming a specific time-predictable multicore processor, we evaluate how the read and write primitives of the five algorithms contribute to the worst-case execution time of the communicating tasks. Each of the five algorithms has specific capabilities that make them suitable for different scenarios.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115037383","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"No-wait Packet Scheduling for IEEE Time-sensitive Networks (TSN)","authors":"Frank Dürr, N. Nayak","doi":"10.1145/2997465.2997494","DOIUrl":"https://doi.org/10.1145/2997465.2997494","url":null,"abstract":"The IEEE Time-sensitive Networking (TSN) Task Group has recently standardized enhancements for IEEE 802.3 networks for enabling it to transport time-triggered traffic (aka scheduled traffic) providing them with stringent bounds on network delay and jitter while also transporting best-effort traffic. These enhancements primarily include dedicating one queue per port of the switch for scheduled traffic along with a programmable gating mechanism that dictates which of the queues are to be considered for transmission. While the IEEE 802.1Qbv standards define these mechanisms to handle scheduled traffic, it stops short of specifying algorithms to compute fine-grained link schedules for the streams of scheduled traffic. Further, the mechanisms in TSN require creation of so-called guard bands to isolate scheduled traffic from the best-effort traffic. These guard bands may potentially result in bandwidth wastage, and hence schedules with lower number of guard bands are preferred. In this paper, we introduce the No-wait Packet Scheduling Problem (NW-PSP) for modelling the scheduling in IEEE Time-sensitive Networks and map it to the No-wait Job-shop Scheduling Problem (NW-JSP), a well-known problem from the field of operational research. In particular, we present a Tabu search algorithm for efficient computing of schedules and a schedule compression technique to reduce number of guard bands in schedule. Our evaluations show that our Tabu search algorithm can compute near-optimal schedules for over 1500 flows and the subsequent schedule compression reduces the number of guard bands on an average by 24%.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"50 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123484113","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
G. V. D. Brüggen, Wen-Hung Huang, Jian-Jia Chen, Cong Liu
{"title":"Uniprocessor Scheduling Strategies for Self-Suspending Task Systems","authors":"G. V. D. Brüggen, Wen-Hung Huang, Jian-Jia Chen, Cong Liu","doi":"10.1145/2997465.2997497","DOIUrl":"https://doi.org/10.1145/2997465.2997497","url":null,"abstract":"We study uniprocessor scheduling for hard real-time self-suspending task systems where each task may contain a single self-suspension interval. We focus on improving state-of-the-art fixed-relative-deadline (FRD) scheduling approaches, where an FRD scheduler assigns a separate relative deadline to each computation segment of a task. Then, FRD schedules different computation segments by using the earliest-deadline first (EDF) scheduling policy, based on the assigned deadlines for the computation segments. Our proposed algorithm, Shortest Execution Interval First Deadline Assignment (SEIFDA), greedily assigns the relative deadlines of the computation segments, starting with the task with the smallest execution interval length, i.e., the period minus the self-suspension time. We show that any reasonable deadline assignment under this strategy has a speedup factor of 3. Moreover, we present how to approximate the schedulability test and a generalized mixed integer linear programming (MILP) that can be formulated based on the tolerable loss in the schedulability test defined by the users. We show by both analysis and experiments that through designing smarter relative deadline assignment policies, the resulting FRD scheduling algorithms yield significantly better performance than existing schedulers for such task systems.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"55 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125020445","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Preemptive scheduling of dependent periodic tasks modeled by synchronous dataflow graphs","authors":"Enagnon Cédric Klikpo, Alix Munier Kordon","doi":"10.1145/2997465.2997474","DOIUrl":"https://doi.org/10.1145/2997465.2997474","url":null,"abstract":"Advanced features in modern cars have increased the criticality level of embedded applications in automotive. These applications are generally composed of several communicating functions, for which a deterministic data exchanges is crucial. In the industry, applications are designed with high level models such as Matlab/Simulink. They are implemented on an AUTOSAR platform, where they are scheduled with a fixed-priority based Operating System (OS). However, AUTOSAR OS does not directly provide support for deterministic dataflow implementation. In this paper, we present an approach to implement a deterministic dataflow of dependent periodic tasks on preemptive fixed-priority based uniprocessor. We consider a multi-periodic system consisting in several dependent realtime tasks modeled by a Synchronous Dataflow Graph. We use the scheduling of the graph to make the dependent tasks set independent. This permits to insure a deterministic dataflow without requiring synchronization mechanisms. In addition, it allows to use the existing scheduling policies for independent tasks. We propose several heuristics which find a scheduling solution in 76 percent of cases and provide a fast method to deal with dependencies in multi-periodic systems.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127725851","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Adaptive Fair Scheduler: Fairness in Presence of Disturbances","authors":"Enrico Bini","doi":"10.1145/2997465.2997468","DOIUrl":"https://doi.org/10.1145/2997465.2997468","url":null,"abstract":"The problem of allocating resources over time to different demands in a \"fair\" way is present in many application domains. If the resource can be allocated with an arbitrarily fine granularity at no cost, then any type of resource allocation can be achieved (this scheme is called fluid for its resemblance to water). Instead, if the resource has some coarse granularity, then the fluid resource allocation can only be approximated. The notion of lag measures the deviation between the fluid schedule and the real schedule which can be actually achieved. In this paper, we propose the Adaptive Fair Scheduler (AFS), which allocates resources over time and guarantees a target service rate to a set of applications. AFS is capable of achieving a bounded lag in presence of time overhead at scheduling decision instants, and uncertainties in the resource allocation. Thanks to its generality, AFS can be applied to many different application domains. Reconfigurable computing, scheduling of heterogeneous units, and multiprocessor scheduling are some notable examples.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"40 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131953203","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Antonio Paolillo, Paul Rodríguez, Nikita Veshchikov, J. Goossens, B. Rodriguez
{"title":"Quantifying Energy Consumption for Practical Fork-Join Parallelism on an Embedded Real-Time Operating System","authors":"Antonio Paolillo, Paul Rodríguez, Nikita Veshchikov, J. Goossens, B. Rodriguez","doi":"10.1145/2997465.2997473","DOIUrl":"https://doi.org/10.1145/2997465.2997473","url":null,"abstract":"In this work, we present the experimental assessment of a parallel framework that allows to reduce the energy consumption of MPSoC platforms running hard real-time systems. We use a power-aware Fork-Join task model based on primitives of the OpenMP library, a scheduling algorithm to execute such model and a schedulability test from the literature to ensure that all timing requirements are met while the energy consumption of the whole system is reduced. Practical experiments involving the deployment of OpenMP applications on a parallel embedded real-time operating system and power measurements on a MPSoC board through an oscilloscope probe show that intra-task parallelism helps to reduce the total energy consumption of the system in a realistic setting.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"92 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129545026","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Scheduling Constrained-Deadline Parallel Tasks on Two-type Heterogeneous Multiprocessors","authors":"Björn Andersson, Gurulingesh Raravi","doi":"10.1145/2997465.2997482","DOIUrl":"https://doi.org/10.1145/2997465.2997482","url":null,"abstract":"Consider the problem of scheduling a taskset on a multiprocessor to meet all deadlines. Assume constrained-deadline sporadic tasks and stage-parallelism (i.e., a task comprises one or more stages with a stage comprising one or more segments so that segments in the same stage are allowed to execute in parallel and a segment is allowed to execute only if all segments of the previous stage have finished). Also assume a two-type heterogeneous multiprocessor platform (i.e., there are processors of two types, type-1 and type-2, and for each task, there is a specification of its execution speed on a type-1 processor and on a type-2 processor) and intra-type migration (i.e., a job can migrate between processors of the same type but for a task, all jobs of this task must execute on the same processor type). We present an algorithm for this problem; it assigns each task to a processor type and then schedules tasks on processors of each type with global-Earliest-Deadline-First. It has pseudo-polynomial time complexity and speedup bound at most 5. We also present a variant of this algorithm; it has the same time complexity and same speedup bound but has better average-case performance. We evaluate both algorithms on randomly-generated systems with up to 256 tasks and 256 processors and find that for most systems the algorithms took at most 1 second and they never took more than 42 seconds to finish. Also, for almost 100% of the systems, the latter algorithm succeeds if given processors twice faster than the speed needed to satisfy a necessary feasibility test (hence the algorithm behaves almost as if the speedup bound is two). This is the first work on scheduling parallel real-time tasks on a heterogeneous multiprocessor with provably good performance.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134185079","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Improving the Schedulability of Mixed Criticality Cyclic Executives via Limited Task Splitting","authors":"Tom Fleming, Sanjoy Baruah, A. Burns","doi":"10.1145/2997465.2997492","DOIUrl":"https://doi.org/10.1145/2997465.2997492","url":null,"abstract":"Mixed Criticality workloads present a challenging paradigm which requires equal consideration of functional separation and efficient platform usage. As more powerful platforms become available the consolidation of previously federated functionality becomes highly desirable. Such platforms are becoming increasingly multi-core in nature bringing challenges in addition to those of isolation and utilisation. Cyclic Executives (CE) are used extensively in industry to schedule highly critical functionality in a manner which aids certification. The CE paradigm may be applied to the mixed criticality case making use of a number of features to ensure the sufficient separation of different levels of criticality. While previous work has considered the separation of criticality levels, this work focuses on providing high system utilisation. One of the significant challenges of such an implementation is the allocation of work (tasks) to minor cycles and cores. This work considers such an allocation problem and presents a means of testing schedulability using Linear Programming (LP) tools. Toward the aim of high system utilisation we consider how tasks of different criticality levels might be split, in some limited way, in order to increase the overall schedulability. We show that even minimal task splitting can drastically release slack previously unusable due to isolation requirements, which in turn provides a significant increase in schedulability.","PeriodicalId":245345,"journal":{"name":"Proceedings of the 24th International Conference on Real-Time Networks and Systems","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2016-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130172122","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}