575 research outputs found

    Randomized algorithms for fully online multiprocessor scheduling with testing

    Full text link
    We contribute the first randomized algorithm that is an integration of arbitrarily many deterministic algorithms for the fully online multiprocessor scheduling with testing problem. When there are two machines, we show that with two component algorithms its expected competitive ratio is already strictly smaller than the best proven deterministic competitive ratio lower bound. Such algorithmic results are rarely seen in the literature. Multiprocessor scheduling is one of the first combinatorial optimization problems that have received numerous studies. Recently, several research groups examined its testing variant, in which each job JjJ_j arrives with an upper bound uju_j on the processing time and a testing operation of length tjt_j; one can choose to execute JjJ_j for uju_j time, or to test JjJ_j for tjt_j time to obtain the exact processing time pjp_j followed by immediately executing the job for pjp_j time. Our target problem is the fully online version, in which the jobs arrive in sequence so that the testing decision needs to be made at the job arrival as well as the designated machine. We propose an expected (ฯ†+3+1)(โ‰ˆ3.1490)(\sqrt{\varphi + 3} + 1) (\approx 3.1490)-competitive randomized algorithm as a non-uniform probability distribution over arbitrarily many deterministic algorithms, where ฯ†=5+12\varphi = \frac {\sqrt{5} + 1}2 is the Golden ratio. When there are two machines, we show that our randomized algorithm based on two deterministic algorithms is already expected 3ฯ†+313โˆ’7ฯ†4(โ‰ˆ2.1839)\frac {3 \varphi + 3 \sqrt{13 - 7\varphi}}4 (\approx 2.1839)-competitive. Besides, we use Yao's principle to prove lower bounds of 1.66821.6682 and 1.65221.6522 on the expected competitive ratio for any randomized algorithm at the presence of at least three machines and only two machines, respectively, and prove a lower bound of 2.21172.2117 on the competitive ratio for any deterministic algorithm when there are only two machines.Comment: 21 pages with 1 plot; an extended abstract to be submitte

    Global EDF ์Šค์ผ€์ค„๋ง์„ ์œ„ํ•œ ์‹ค์‹œ๊ฐ„ ํƒœ์Šคํฌ์˜ ์กฐ๊ฑด๋ถ€ ์ตœ์  ๋ณ‘๋ ฌํ™”

    Get PDF
    ํ•™์œ„๋…ผ๋ฌธ(๋ฐ•์‚ฌ) -- ์„œ์šธ๋Œ€ํ•™๊ต๋Œ€ํ•™์› : ๊ณต๊ณผ๋Œ€ํ•™ ์ปดํ“จํ„ฐ๊ณตํ•™๋ถ€, 2022.2. ์ด์ฐฝ๊ฑด.Real-time applications are rapidly growing in their size and complexity. This trend is apparent even in extreme deadline-critical sectors such as autonomous driving and artificial intelligence. Such complex program models are described by a directed-acyclic-graph (DAG), where each node of the graph represents a task, and the connected edges portray the precedence relation between the tasks. With this intricate structure and intensive computation requirements, extensive system-wide optimization is required to ensure a stable real-time execution. On the other hand, recent advances in parallel computing frameworks, such as OpenCL and OpenMP, allow us to parallelize a real-time task into many different versions, which is called ``parallelization freedom.'' Depending on the degree of parallelization, the thread execution times can vary significantly, that is, more parallelization tends to reduce each thread execution time but increase the total execution time due to parallelization overhead. By carefully selecting a ``parallelization option'' for each task, i.e., the chosen number of threads each task is parallelized into, we can maximize the system schedulability while satisfying real-time constraints. Because of this benefit, parallelization freedom has drawn recent attention. However, for global EDF scheduling, G-EDF for short, the concept of parallelization freedom still has not brought much attention. To this extent, this dissertation proposes a way of optimally assigning parallelization options to real-time tasks for G-EDF on a multi-core system. Moreover, we aim to propose a polynomial-time algorithm that can be used for online situations where tasks dynamically join and leave. We formalize a monotonic increasing property of both tolerance and interference to the parallelization option to achieve this. Using such properties, we develop a uni-directional search algorithm that can assign parallelization options in polynomial time, which we formally prove the optimality. With the optimal parallelization, we observe significant improvement of schedulability through simulation experiment, and then in the following implementation experiment, we demonstrate that the algorithm is practically applicable for real-world use-cases. This dissertation first focuses on the traditional task model, i.e., multi-thread task model, then extends also to target the multi-segment (MS) task model and finally discusses the more general directed-acyclic-graph (DAG) task model to accommodate a wide range of real-world computing models.์ด ๋…ผ๋ฌธ์€ Global EDF ์Šค์ผ€์ค„๋Ÿฌ์—์„œ์˜ ์‹ค์‹œ๊ฐ„ ํƒœ์Šคํฌ์˜ ์ตœ์  ๋ณ‘๋ ฌํ™” ๊ธฐ๋ฒ•์— ๋Œ€ํ•ด ๊ธฐ์ˆ ํ•œ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๋ณ‘๋ ฌํ™” ์˜ต์…˜ ์ฆ๊ฐ€์— ๋Œ€ํ•ด tolerance์™€ interference๊ฐ€ ๋‹จ์กฐ ์ฆ๊ฐ€ํ•จ์„ ์ˆ˜ํ•™์ ์œผ๋กœ ๋ฐํžŒ๋‹ค. ์ด๋Ÿฌํ•œ ํŠน์„ฑ์„ ์ด์šฉํ•˜์—ฌ, ๋‹คํ•ญ์‹ ์‹œ๊ฐ„์•ˆ์— ์ˆ˜ํ–‰๋  ์ˆ˜ ์žˆ๋Š” ์‹ค์‹œ๊ฐ„ ํƒœ์Šคํฌ์˜ ๋ณ‘๋ ฌํ™” ๊ธฐ๋ฒ•์„ ์ œ์•ˆํ•˜๊ณ , ์ˆ˜ํ•™์ ์œผ๋กœ ์ตœ์ ์˜ ๋ฐฉ๋ฒ•์ž„์„ ์ฆ๋ช…ํ•œ๋‹ค. ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ์‹คํ—˜์„ ํ†ตํ•ด, ์‹ค์‹œ๊ฐ„ ํƒœ์Šคํฌ์˜ ์Šค์ผ€์ค„๋ง ์„ฑ๋Šฅ์˜ ๋น„์•ฝ์ ์ธ ์ƒ์Šน์„ ๊ด€์ฐฐํ•˜๊ณ , ์ด์–ด์ง€๋Š” ์‹ค์ œ ์„ธ๊ณ„ ์›Œํฌ๋กœ๋“œ๋ฅผ ์ด์šฉํ•œ ๊ตฌํ˜„ ์‹คํ—˜์—์„œ ์‹ค์ œ ์„ธ๊ณ„ ์ ์šฉ ๊ฐ€๋Šฅ์„ฑ์„ ์ ๊ฒ€ํ•œ๋‹ค. ์ด ๋…ผ๋ฌธ์€ ๋จผ์ € ์ „ํ†ต์ ์ธ ๋ฉ€ํ‹ฐ์“ฐ๋ ˆ๋“œ ํƒœ์Šคํฌ ๋ชจ๋ธ์„ ๋Œ€์ƒ์œผ๋กœ ์ตœ์  ๋ณ‘๋ ฌํ™” ๋ฐฉ๋ฒ•์„ ๋…ผํ•˜๋ฉฐ, ์ดํ›„ ๋ฉ€ํ‹ฐ ์„ธ๊ทธ๋จผํŠธ, DAG ํƒœ์Šคํฌ ๋ชจ๋ธ๊นŒ์ง€ ํ™•์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ธฐ์ˆ ํ•œ๋‹ค.1. Introduction 1 1. 1 Motivation and Objective 1 1. 2 Approach 3 1. 3 Organization 4 2. Related Work 5 2. 1 Real-Time Multi-Core Scheduling 5 2. 2 Real-Time Multi-Core Task Model 6 2. 3 Real-Time Multi-Core Schedulability Analysis 7 3. Optimal Parallelization of Multi-Thread Tasks 9 3. 1 Introduction 9 3. 2 Problem Description 10 3. 3 Extension of BCL Schedulability Analysis 12 3. 3. 1 Overview of BCL Schedulability Analysis 13 3. 3. 2 Properties of Parallelization Freedom 17 3. 4 Optimal Assignment of Parallelization Options 30 3. 4. 1 Optimal Parallelization Assignment Algorithm 33 3. 4. 2 Optimality of Algorithm1 35 3. 4. 3 Time Complexity of Algorithm1 38 3. 5 Experiment Results 38 3. 5. 1 Simulation Results 39 3. 5. 2 Simulated Schedule Results 43 3. 5. 3 Survey on the Boundary Condition of the Parallelization Freedom 45 3. 5. 4 Autonomous Driving Task Implementation Results 48 4. Conditionally Optimal Parallelization of Multi-Segment and DAG Tasks 56 4. 1 Introduction 56 4. 2 Multi-Segment Task Model 58 4. 3 Extension of Chwa-MS Schedulability Analysis 60 4. 3. 1 Chwa-MS Schedulability Analysis 60 4. 3. 2 Tolerance and Interference of Multi-Segment Tasks 62 4. 4 Assigning Parallelization Options to Multi-Segments 63 4. 4. 1 Parallelization Route 63 4. 4. 2 Assigning Parallelization Options to Multi-Segment Tasks 66 4. 4. 3 Time complexity of Algorithm2 69 4.5 DAG (Directed Acyclic Graph) Task Model 69 4. 6 Extension of Chwa-DAG Schedulability Analysis 73 4. 6. 1 Chwa-DAG Schedulability Analysis 73 4. 6. 2 Tolerance and Interference of DAG Tasks 78 4. 7 Assigning Parallelization Options to DAG Tasks 87 4. 7. 1 Parallelization Route for DAG Task Model 87 4. 7. 2 Assigning Parallelization Options to DAG Tasks 90 4. 7. 3 Time Complexity of Algorithm3 91 4. 8 Experiment Results: Multi-Segment Task Model 93 4. 9 Experiment Results: DAG Task Model 96 4. 9. 1 Simulation Results 97 4. 9. 2 Implementation Results 100 5 Conclusion 104 5. 1 Summary 104 5. 2 Future Work 105 6. References 106๋ฐ•

    Validation of multiprocessor systems

    Get PDF
    Experiments that can be used to validate fault free performance of multiprocessor systems in aerospace systems integrating flight controls and avionics are discussed. Engineering prototypes for two fault tolerant multiprocessors are tested

    An Average-Case Analysis for Rate-Monotonic Multiprocessor Real-time Scheduling

    Get PDF
    We introduce the "First Fit Matching Periods" algorithm for static-priority multiprocessor scheduling of periodic tasks with implicit deadlines and show that it yields asymptotically optimal processor assignments if utilization values are chosen uniformly at random. More precisely we prove that the expected waste is upper bounded by O(n^(3/4) * (log n)^(3/8)). Here the waste denotes the ratio of idle times, cumulated over all processors and n gives the number of tasks. The algorithm can be implemented to run in time O(n log n) and even in the worst case, an asymptotic approximation ratio of 2 is guaranteed. Experiments yield an expected waste proportional to n^0.70, indicating that the above upper bound on the expected waste is almost tight

    Using Imprecise Computing for Improved Real-Time Scheduling

    Get PDF
    Conventional hard real-time scheduling is often overly pessimistic due to the worst case execution time estimation. The pessimism can be mitigated by exploiting imprecise computing in applications where occasional small errors are acceptable. This leverage is investigated in a few previous works, which are restricted to preemptive cases. We study how to make use of imprecise computing in uniprocessor non-preemptive real-time scheduling, which is known to be more difficult than its preemptive counterpart. Several heuristic algorithms are developed for periodic tasks with independent or cumulative errors due to imprecision. Simulation results show that the proposed techniques can significantly improve task schedulability and achieve desired accuracyโ€“ schedulability tradeoff. The benefit of considering imprecise computing is further confirmed by a prototyping implementation in Linux system. Mixed-criticality system is a popular model for reducing pessimism in real-time scheduling while providing guarantee for critical tasks in presence of unexpected overrun. However, it is controversial due to some drawbacks. First, all low-criticality tasks are dropped in high-criticality mode, although they are still needed. Second, a single high-criticality job overrun leads to the pessimistic high-criticality mode for all high-criticality tasks and consequently resource utilization becomes inefficient. We attempt to tackle aforementioned two limitations of mixed-criticality system simultaneously in multiprocessor scheduling, while those two issues are mostly focused on uniprocessor scheduling in several recent works. We study how to achieve graceful degradation of low-criticality tasks by continuing their executions with imprecise computing or even precise computing if there is sufficient utilization slack. Schedulability conditions under this Variable-Precision Mixed-Criticality (VPMC) system model are investigated for partitioned scheduling and global fpEDF-VD scheduling. And a deferred switching protocol is introduced so that the chance of switching to high-criticality mode is significantly reduced. Moreover, we develop a precision optimization approach that maximizes precise computing of low-criticality tasks through 0-1 knapsack formulation. Experiments are performed through both software simulations and Linux proto- typing with consideration of overhead. Schedulability of the proposed methods is studied so that the Quality-of-Service for low-criticality tasks is improved with guarantee of satisfying all deadline constraints. The proposed precision optimization can largely reduce computing errors compared to constantly executing low-criticality tasks with imprecise computing in high-criticality mode
    • โ€ฆ
    corecore