Time/Utility Function Decomposition Techniques for Utility Accrual Scheduling Algorithms in Real-Time Distributed Systems

2005 ◽  
Vol 54 (9) ◽  
pp. 1138-1153 ◽  
Author(s):  
Haisang Wu ◽  
B. Ravindran ◽  
E.D. Jensen ◽  
Peng Li
2012 ◽  
Vol 2012 ◽  
pp. 1-12 ◽  
Author(s):  
Shuo Liu ◽  
Gang Quan ◽  
Shangping Ren

We present our approach to real-time service-oriented scheduling problems with the objective of maximizing the total system utility. Different from the traditional utility accrual scheduling problems that each task is associated with only a single time utility function (TUF), we associate two different TUFs—a profit TUF and a penalty TUF—with each task, to model the real-time services that not only need to reward the early completions but also need to penalize the abortions or deadline misses. The scheduling heuristics we proposed in this paper judiciously accept, schedule, and abort real-time services when necessary to maximize the accrued utility. Our extensive experimental results show that our proposed algorithms can significantly outperform the traditional scheduling algorithms such as the Earliest Deadline First (EDF), the traditional utility accrual (UA) scheduling algorithms, and an earlier scheduling approach based on a similar model.


2021 ◽  
Vol 40 (2) ◽  
pp. 65-69
Author(s):  
Richard Wai

Modern day cloud native applications have become broadly representative of distributed systems in the wild. However, unlike traditional distributed system models with conceptually static designs, cloud-native systems emphasize dynamic scaling and on-line iteration (CI/CD). Cloud-native systems tend to be architected around a networked collection of distinct programs ("microservices") that can be added, removed, and updated in real-time. Typically, distinct containerized programs constitute individual microservices that then communicate among the larger distributed application through heavy-weight protocols. Common communication stacks exchange JSON or XML objects over HTTP, via TCP/TLS, and incur significant overhead, particularly when using small size message sizes. Additionally, interpreted/JIT/VM-based languages such as Javascript (NodeJS/Deno), Java, and Python are dominant in modern microservice programs. These language technologies, along with the high-overhead messaging, can impose superlinear cost increases (hardware demands) on scale-out, particularly towards hyperscale and/or with latency-sensitive workloads.


1982 ◽  
Vol 7 (1) ◽  
pp. 11-20 ◽  
Author(s):  
D.M. Berry ◽  
C. Ghezzi ◽  
D. Mandrioli ◽  
F. Tisato

Sign in / Sign up

Export Citation Format

Share Document