• Tidak ada hasil yang ditemukan

Thesis submitted in partial fulfillment of the requirements for the degree of

N/A
N/A
Protected

Academic year: 2023

Membagikan "Thesis submitted in partial fulfillment of the requirements for the degree of"

Copied!
155
0
0

Teks penuh

The other functionalities are not safety-critical and do not need to be certified. During the verification process, formal models are constructed to assess the runtime behavior of the systems.

Overview of Mixed-criticality Real-time Systems

During the certification process, the CAs mainly focus on the runtime behavior of the systems. A CA may estimate the WCET of a piece of code to be far higher than that of the system designer.

Table 1.2: An example instance to explain MCS
Table 1.2: An example instance to explain MCS

Time-triggered Scheduling

Thus, the main problem in scheduling tasks/mixed criticality tasks is to satisfy both the CAs and SDs. In the slot shift paradigm [Foh95, IF00], the timed schedule is partially computed offline.

Outline of the Thesis

Time-triggered Scheduling of Uniprocessor Mixed-criticality SystemsSystems

If the algorithms do not find a priority order, they will not be able to construct the time-triggered scheduling tables. We propose an algorithm called TT-Merge, which can directly construct the time-triggered scheduling tables without using priorities.

Energy-efficient Time-triggered Scheduling of Uniprocessor Mixed-criticality Systems

We prove that the TT-Merge algorithm schedules a strict superset of instances scheduled by the OCBP-based time-driven scheduling algorithm and MCEDF. Then, TT-Merge is extended for mixed-criticality dependent tasks (abbreviated as DP-TT-Merge), periodic tasks, and synchronous reactive systems.

Time-triggered Scheduling of Multiprocessor Mixed- criticality Systemscriticality Systems

Organization of the Thesis

In this chapter, we present the basic notations and definitions used in this thesis, including the background and an overview of mixed-critical systems. Finally, we present a brief introduction of systems for mixed criticism and work done in this area.

Real-time Task Model

  • Overview of Real-time Scheduling
  • Dynamic-priority Scheduling
  • Fixed-priority Scheduling
  • Real-time Multiprocessor Scheduling

Di ∈N+ denotes the corresponding deadline, i.e., the maximum time allowed for the task to complete its execution. If the displacements of all tasks are the same, then the set of tasks is called synchronous.

Table 2.1: Different types of real-time multiprocessor algorithms
Table 2.1: Different types of real-time multiprocessor algorithms

Mixed-criticality System Model

The collection of all such actual execution times of tasks/jobs is called a scenario, i.e., a tuple (c1, c2, . . . , cn), where is the actual execution time of jobjk. A schedule for a scenario (c1, c2, . . . , cn) with criticality l is feasible if every job withχk ≥l takes the execution time during its time window [ak, dk].

Related Work

Subsequently, Baruah [Bar14], [Bar12] proposed a schedule generation algorithm for mixed-critical synchronous programs on uniprocessor platforms. All the mixed-criticality scheduling algorithms discussed above are based on single-processor mixed-criticality systems.

Introduction

System Model

Related Work

The authors proved that an instance I is OCBP schedulable on a given processor, if and only if all the tasks in I are assigned a priority by the OCBP algorithm. We show in section 3.3 that our algorithm can schedule a strict superset of instances that can be scheduled by the OCBP-based algorithm.

Our Work

This means that the task with the lowest priority in that interval will be the root of the priority tree. Now the MCEDF algorithm uses topological sorting to find the priority order of the instance, which in this case could be chosen as {j2, j3, j6, j4, j5, j1}.

Table 3.1: Example instance scheduled by TT-Merge and not by the OCBP-based algorithm or MCEDF
Table 3.1: Example instance scheduled by TT-Merge and not by the OCBP-based algorithm or MCEDF

The Proposed Algorithm: TT-Merge

  • The Algorithm
  • Intuition Behind the Algorithm
  • Correctness Proof
  • Dominance Over OCBP-based Algorithm
  • Dominance Over MCEDF Algorithm

Then, the HI-criticality tasks are assigned Ci(HI) − Ci(LO) units of HI-criticality execution time after their Ci(LO) execution units inSHI. We know that the HI-critical tasks are assigned their Ci(HI)−Ci(LO) execution units after the assignment of Ci(LO) execution units inSHI.

Figure 3.4: EDF order of three jobs. Up arrows indicate arrival and down arrows indicate completion times
Figure 3.4: EDF order of three jobs. Up arrows indicate arrival and down arrows indicate completion times

Extension for m Criticality Levels

Model

As in the previous case, all tasks in THI in the interval [ah, t] and the tasks in TLO, including task jl, in the interval [ah, t] have a priority (according to MCEDF) greater or equal to that from jh. While (Γ =χi), at each time t the task available at time t in the table Sχi will be executed.

Algorithm

The following scheduler algorithm is used to dispatch the tasks at runtime using the m-tables. Then, all tasks whose criticality is greater than 1 Ci(2)−Ci(1) should be assigned execution time units immediately after their Ci(1) execution units in S2.

Correctness Proof

Then, χi-criticality jobs are assigned Ci(χi)−Ci(χi−1) units of χi-criticality execution time immediately following their Ci(χi−1) execution units in Sχi. If the allocation time of an aχi-criticality task to be pushed is the same in both the Sχi and Tχi tables, then additional time units are allocated behind that task.

Extension for Dependent Jobs

  • Model
  • The Algorithm
  • Correctness Proof
  • Generalizing the Algorithm for m Criticality Levels

Then, the HI-criticality tasks are assigned their Ci(HI)−Ci(LO) execution time units of HI-criticality immediately after their Ci(LO) execution time units in SHI. We then show that each job of HI-criticality jk receives Ck(HI) units of execution in SHI.

Figure 3.14: A DAG showing job dependencies. The numbers in parentheses indicates deadline
Figure 3.14: A DAG showing job dependencies. The numbers in parentheses indicates deadline

Extension for Periodic Jobs

We know that Algorithm 8 can find two tables SLO and SHI that can be used by the scheduler for correct online scheduling policy. So we can say that the algorithm discussed in this section can be extended to find m tables that can be used by the scheduler to find a correct online scheduling strategy.

Comparison with Mixed-criticality Synchronous ProgramsPrograms

Model

This means that the blocks in the interval [al, t−1] in table SLO are either equal or higher priority blocks than Bl according to OCBP. Then it is clear that after the blocks with higher priority than Bl finish their C(LO) execution units, there will not be enough time for Bl to finish its Cl(LO) execution units in the interval [al, tl0] of the OCBP schedule .

Table 3.5: An example instance to explain the application of our algorithm on synchronous reactive systems
Table 3.5: An example instance to explain the application of our algorithm on synchronous reactive systems

Results and Discussion

Typically TT-Merge is successful in scheduling twice the number of cases than the OCBP-based algorithm. We have done another experiment where the number of jobs in an instance varied from 5 to 100.

Figure 3.24: Comparison of number of MC-schedulable instances at an utilization of 0.9 times more than the MCEDF algorithm
Figure 3.24: Comparison of number of MC-schedulable instances at an utilization of 0.9 times more than the MCEDF algorithm

Conclusion

We can see that the number of instances that can be scheduled decreases with increasing utilization. We extend the TT-Merge algorithm to optimize the energy consumption of mixed-criticality systems.

Introduction

We show that our algorithm outperforms that of [HKGT14, NHG+16], the dominant existing algorithm using DVFS for systems with mixed criticality with respect to energy consumption minimization. Ours is the first energy-efficient time-triggered algorithm for scheduling systems with mixed criticality.

System Model and Literature Survey

Mixed-criticality Task Model

We then prove the optimality of the proposed algorithm in terms of energy consumption minimization for scheduler produced by the TT-Merge algorithm. The rest of the chapter is organized as follows: Section 4.2 describes the system model and definitions.

Power Model and DVFS

Related Work

NHG+16] proposed a method based on a more general system model to reduce energy consumption in multicore mixed-critical systems. We show that our algorithm consumes less energy compared to any energy efficient algorithm based on EDF-VD.

Motivation and Problem Definition

Problem Formulation

Without loss of generality, we calculate the minimization of energy consumption up to the hyperperiod P of the task set. We want to minimize the normalized power consumption during a hyperperiod (i.e., the actual power consumption divided by the hyperperiod of the task set) in the LO-criticality scenario by varying the processor frequency.

The Proposed Algorithm

Energy-efficient EDF-VD versus Energy-efficient TT-Merge

From Lemma 4.4.2, we know that the same processor frequency assigned to each job results in minimal energy consumption. Using Lemma 4.4.2, we know that the same processor frequency assigned to each job results in minimal energy consumption.

Extension for Discrete Frequency Levels

Our algorithm assigns two different processor frequency to each job scheduled before and after the ∆ik, respectively. Thus, the processor frequencies assigned by the energy-efficient EDF-VD algorithm are equal to or greater than those assigned by our algorithm.

Extension of the Proposed Algorithm for Depen- dent Task Setsdent Task Sets

Model

We need to find the processor frequencies for each task such that the energy consumption can be minimized in the LO criticality scenario using the DVFS method without affecting the schedulability of the system in both scenarios. For example, if a job jik is assigned a processor frequency fm < fikLO < fn, then processor frequency fn can be assigned to a job jik, where fm and fn are two consecutive processor frequencies inF.

Problem Formulation

That is, there will be no set of tasks where an external edge from a LO-criticality task becomes an internal edge in a HI-criticality task. It should be possible to construct ˜SLO ensuring that the failure situation (4) of TT-Merge-DEP of Chapter 3 does not occur, at any time t (i.e., ˜TLO[t] is not empty and ˜ THI[t] is not empty at time t. 4.30) where ˜TLO[t] contains a LO-criticality job and ˜THI[t] contains a HI-criticality job at time t, respectively.

The Algorithm

It should be possible to construct ˜TLO and ˜THI using ˜Ci(LO) and ˜Ci(HI) run-time units of the jik job, respectively, without missing a deadline like the TT-Merge-DEP of Chapter 3. 4.29 ) where ˜Ci(LO) and ˜Ci(HI) are the time required to execute Ci(LO) and Ci(HI) units of execution time, respectively. The total normalized power consumption of the energy-efficient TT-Merge algorithm using the above processor frequencies is 0.835.

Figure 4.6: Dependencies among the tasks given in Table 4.1
Figure 4.6: Dependencies among the tasks given in Table 4.1

Results and Discussion

It is clear from the graph that the schedule constructed according to the energy-efficient TT-Merge algorithm consumes less energy than that constructed by the energy-efficient EDF-VD algorithm for all applications. We can also see that the schedule constructed according to our algorithm consumes 20% and 25% less energy than that constructed by the energy-efficient EDF-VD and PMC algorithms, respectively, at higher LO-critical utilization.

Figure 4.11: Comparison of normalized energy consumption between Energy-Efficient EDF- EDF-VD and TT-Merge
Figure 4.11: Comparison of normalized energy consumption between Energy-Efficient EDF- EDF-VD and TT-Merge

Conclusion

Now we compare our algorithm with energy-efficient EDF-VD and the work in [ASK15], which we abbreviated as PMC. 4.13, it is clear that the schedule constructed according to our algorithm consumes less energy than both the existing algorithms.

Introduction

System Model

While (Γ = LO), at each time t the work available at time t in the table SLO for processor Pi will be executed on Pi. While (Γ = HI), at each time t the work available at time t in the table SHI for processor Pi will be executed on Pi.

Related Work

The Proposed Algorithm: LoCBP

Correctness Proof

Since no HIscenarioF ailure(SLO, I,Ψ) subroutine finds any HI-criticality scenario error, thus all HI-criticality tasks have received their Ci(HI) units of execution time. We know that all HI-criticality tasks are assigned their Ci(HI)−Ci(LO) units of execution time in SHI after the completion of their Ci(LO) units of execution time in both SLO and SHI.

Comparison with MCPI Algorithm

Therefore, according to the MCPI algorithm, the task ji also has the lowest priority among the HI-criticality tasks. This shows that the task ji is the lowest priority task according to the MCPI algorithm.

Extension for Dependent Jobs

Model

The DP-LoCBP Algorithm

InSHI each HI-critical job is allocated its Ci(LO) units of execution time without violating the dependency constraints. Finally, tableSHI is constructed for each processor by allocating Ci(HI) units of execution time for each HI-critical job using the same order of allocated jobs in SLO, where an HI-critical job gets higher priority over an LO-critical job .

Figure 5.3: An example instance to explain the DP-LoCBP algorithm
Figure 5.3: An example instance to explain the DP-LoCBP algorithm

Comparison with MCPI Algorithm

So, according to the priority table (SP T) of MCPI, job ji can be given the lowest priority among the LO critical jobs. So according to the MCPI algorithm, the jobji is also the job with the lowest priority among the HI critical jobs.

Results and Discussion

The ratio of time consumed also increases with the increase in the number of jobs per instance and is almost five per 1000 jobs. In another experiment we showed that the time consumption decreases for m= 4, but the ratio of time consumed by our algorithm compared to the MCPI algorithm is very similar to that of casem= 2, as can be seen in figure 2.

Conclusion

In the first experiment, we set the number of processors to 2 and let the due date of the tasks vary between 1 and 2000.

Summary of the Thesis

Finally, we have proven that the proposed energy-efficient time-activated scheduling algorithm is optimal with respect to the TT-Merge algorithm. In this work, we have shown that our algorithm schedules the same number of instances as the MCPI algorithm, the only existing time-triggered scheduling algorithm.

Future Scope of Work

In this thesis, we have not studied fault tolerance in the context of mixed criticism systems. Fault tolerance in the presence of processor faults is a vital function of mixed criticality systems for multiprocessor systems.

IEEE, 2014

IEEE, 1992

Bhaduri, "Time-Triggered Scheduling of Mixed-Criticality Systems", ACM Transactions on Design Automation of Electronic Systems, Volume 22, Issue 4, Issue 74, pp. Bhaduri, “An energy-efficient time-triggered scheduling algorithm for mixed-criticality systems,” Design Automation for Embedded Systems, Springer.

Gambar

Table 1.2: An example instance to explain MCS
Figure 1.2: EDF fails to schedule according to the CAs
Table 3.1: Example instance scheduled by TT-Merge and not by the OCBP-based algorithm or MCEDF
Figure 3.1: Priority tree of the instance given in Table 3.1
+7

Referensi

Dokumen terkait

The results of research at SMA Negeri 4 Enrekang show that using learning media in various formats such as text, images, videos, visual multimedia, and others is effective and has been