Abstract
Execution times of tasks can be variable depend on input data. If we choose a high performance processor to satisfy the worst case execution times, the hard cost becomes high and the energy consumption also becomes large. To apply a lower performance processor, we have to utilize processor capacity maximally while overrunning tasks can not affect deadlines of other tasks. To be used for such systems, this paper presents SBP (Shared Bandwidth Partitioning) that a processor bandwidth is reserved and shared among all tasks. If a task needs more processor capacity, it can use a portion of the shared bandwidth. A simulation result shows that SBP provides better performance than previous algorithms. SBP reduces deadline miss ratio which is related to scheduling quality. And the number of context switches, which is related to system overhead, is also reduced.
태스크의 실행시간은 다양한 입력 데이터에 따라 가변적일 수 있다. 최악의 실행시간을 만족하도록 높은 성능의 프로세서를 사용하면 하드웨어 비용이 증가하고 에너지 소비가 늘어나게 된다. 따라서 적절히 낮은 성능의 프로세서를 적용하기 위해서는, 스케줄링에서는 프로세서의 용량을 최대한 활용하되 가끔씩 일부 태스크가 마감시한을 초과하더라도 다른 태스크에는 영향을 미치지 않도록 제한하는 것이 필요하다. 본 논문에서 제시하는 SBP (Shared Bandwidth Partitioning)는 프로세서의 공유 대역폭을 확보하여 태스크들이 나누어 사용할 수 있도록 하였다. 실행시간이 길어지는 태스크는 이 공유대역폭의 일부를 분할하여 사용하도록 한다. 시뮬레이션으로 평가한 결과, SBP는 기존의 알고리즘들에 비해서 개선된 결과를 얻을 수 있었다. 스케줄링 결과의 질에 해당하는 마감시한 초과 비율이 낮아지고 시스템의 오버헤드에 해당하는 문맥교환 횟수도 감소하는 것을 확인하였다.