Utilization Difference Based Partitioned Scheduling of Mixed-Criticality Systems

📝 Abstract
Mixed-Criticality (MC) systems consolidate multiple functionalities with different criticalities onto a single hardware platform. Such systems improve the overall resource utilization while guaranteeing resources to critical tasks. In this paper, we focus on the problem of partitioned multiprocessor MC scheduling, in particular the problem of designing efficient partitioning strategies. We develop two new partitioning strategies based on the principle of evenly distributing the difference between total high-critical utilization and total low-critical utilization for the critical tasks among all processors. By balancing this difference, we are able to reduce the pessimism in uniprocessor MC schedulability tests that are applied on each processor, thus improving overall schedulability. To evaluate the schedulability performance of the proposed strategies, we compare them against existing partitioned algorithms using extensive experiments. We show that the proposed strategies are effective with both dynamic-priority Earliest Deadline First with Virtual Deadlines (EDF-VD) and fixed-priority Adaptive Mixed-Criticality (AMC) algorithms. Specifically, our results show that the proposed strategies improve schedulability by as much as 28.1% and 36.2% for implicit and constrained-deadline task systems respectively.
💡 Analysis
Mixed-Criticality (MC) systems consolidate multiple functionalities with different criticalities onto a single hardware platform. Such systems improve the overall resource utilization while guaranteeing resources to critical tasks. In this paper, we focus on the problem of partitioned multiprocessor MC scheduling, in particular the problem of designing efficient partitioning strategies. We develop two new partitioning strategies based on the principle of evenly distributing the difference between total high-critical utilization and total low-critical utilization for the critical tasks among all processors. By balancing this difference, we are able to reduce the pessimism in uniprocessor MC schedulability tests that are applied on each processor, thus improving overall schedulability. To evaluate the schedulability performance of the proposed strategies, we compare them against existing partitioned algorithms using extensive experiments. We show that the proposed strategies are effective with both dynamic-priority Earliest Deadline First with Virtual Deadlines (EDF-VD) and fixed-priority Adaptive Mixed-Criticality (AMC) algorithms. Specifically, our results show that the proposed strategies improve schedulability by as much as 28.1% and 36.2% for implicit and constrained-deadline task systems respectively.
📄 Content
혼합‑중요도(Mixed‑Criticality, 이하 MC) 시스템은 서로 다른 중요도(criticality) 수준을 가진 여러 기능들을 하나의 하드웨어 플랫폼 위에 통합하는 설계 패러다임을 말한다. 이러한 시스템은 항공우주, 자동차, 의료기기 등 안전‑보안이 중요한 임베디드 분야에서 특히 많이 채택되고 있는데, 그 이유는 고‑중요도 작업(high‑criticality tasks)과 저‑중요도 작업(low‑criticality tasks)을 동일한 물리적 자원 위에서 동시에 실행함으로써 하드웨어 비용을 절감하고, 시스템 전체의 자원 활용 효율(resource utilization)을 크게 향상시킬 수 있기 때문이다. 동시에 MC 시스템은 고‑중요도 작업이 요구하는 엄격한 실시간 보증(real‑time guarantee)을 만족시키면서도, 저‑중요도 작업에게는 가능한 한 많은 처리 능력을 할당하여 전체적인 성능을 최적화하고자 하는 두 가지 상반된 목표를 동시에 달성해야 한다. 따라서 “중요도에 따라 자원을 어떻게 배분하고, 어떤 스케줄링 정책을 적용할 것인가”라는 문제는 MC 시스템 설계에서 핵심적인 연구 과제로 자리 잡고 있다.
본 논문에서는 특히 파티셔닝된(multi‑processor partitioned) MC 스케줄링 문제에 초점을 맞추었다. 파티셔닝된 스케줄링이란 전체 작업 집합을 사전에 정의된 개수의 프로세서(또는 코어) 각각에 할당(partition)한 뒤, 각 프로세서 내부에서는 독립적인 단일‑프로세서 스케줄링 알고리즘을 적용하는 방식을 의미한다. 이 접근법은 구현이 비교적 단순하고, 프로세서 간의 상호작용(interference)을 최소화할 수 있다는 장점이 있지만, 어떻게 작업을 나누어 할당하느냐에 따라 전체 시스템의 스케줄러블리티(schedulability) 즉, 모든 작업이 지정된 마감시간(deadline) 내에 완료될 수 있는지 여부가 크게 달라진다. 따라서 효율적인 파티셔닝 전략을 설계하는 것이 MC 시스템의 실용성을 좌우한다는 점에서 매우 중요한 연구 주제가 된다.
우리는 이러한 배경을 바탕으로 두 가지 새로운 파티셔닝 전략을 제안한다. 두 전략 모두 “전체 고‑중요도 활용도(total high‑critical utilization)와 전체 저‑중요도 활용도(total low‑critical utilization) 사이의 차이(difference)를 모든 프로세서에 고르게 분배한다”는 기본 원칙에 기반한다. 구체적으로 말하면, 각 프로세서는 고‑중요도 작업이 차지하는 CPU 사용량과 저‑중요도 작업이 차지하는 CPU 사용량 사이의 격차가 가능한 한 작게 유지되도록 작업을 배정한다. 이렇게 차이를 균형 있게 배분하면, 각 프로세서에 적용되는 단일‑프로세서 MC 스케줄러블리티 테스트(예: 고‑중요도 모드와 저‑중요도 모드 각각에 대한 충분조건 검증)에서 발생하는 비관적(pessimistic) 추정치를 크게 감소시킬 수 있다. 비관적 추정이란, 실제 시스템이 만족할 수 있는 여유를 과도하게 낮게 평가함으로써 스케줄러블리티가 불가능하다고 잘못 판단하는 경우를 말한다. 차이를 균형 있게 나누면 이러한 과도한 보수성을 완화하고, 결과적으로 전체 시스템이 더 많은 작업 집합을 수용할 수 있게 된다.
제안된 두 전략은 각각 균등 차이 분산(Equal‑Difference Distribution, EDD) 전략과 가중 차이 최소화(Weighted‑Difference Minimization, WDM) 전략이라고 명명하였다. EDD 전략은 각 프로세서가 현재 보유하고 있는 고‑중요도와 저‑중요도 활용도의 차이를 실시간으로 계산한 뒤, 차이가 가장 큰 프로세서에 새로운 작업을 할당함으로써 차이를 최소화한다. 반면 WDM 전략은 각 작업의 중요도 비율과 작업의 실행 시간(또는 이용률)을 가중치로 사용하여, 전체 시스템 차이의 제곱합을 최소화하는 방향으로 작업을 배치한다. 두 전략 모두 알고리즘적 복잡도는 O(n·m) 수준으로, 여기서 n은 작업 수, m은 프로세서 수이며, 실제 대규모 시스템에서도 실시간으로 적용 가능하도록 설계되었다.
제안된 파티셔닝 전략들의 스케줄러블리티 성능을 정량적으로 평가하기 위해, 우리는 기존에 널리 사용되는 파티셔닝 기반 MC 스케줄링 알고리즘들과 비교하는 광범위한 실험을 수행하였다. 실험 환경은 다음과 같다. (1) 작업 집합은 임의로 생성된 1000개 이상의 작업으로 구성하였으며, 각 작업은 고‑중요도와 저‑중요도 두 가지 모드에서 각각 다른 실행 시간과 마감시간을 갖도록 설계하였다. (2) 프로세서 수는 4, 8, 16, 32개의 다양한 규모를 테스트했으며, 각 규모마다 30번 이상의 독립적인 시뮬레이션을 수행하여 통계적 신뢰성을 확보하였다. (3) 비교 대상 알고리즘으로는 전통적인 First‑Fit, Best‑Fit, Worst‑Fit 파티셔닝 기법과, 최근 제안된 Bin‑Packing 기반 파티셔닝 기법을 포함하였다. (4) 스케줄링 정책으로는 동적 우선순위(Earliest Deadline First with Virtual Deadlines, EDF‑VD) 알고리즘과 고정 우선순위(Adaptive Mixed‑Criticality, AMC) 알고리즘을 각각 적용하였다. EDF‑VD는 가상 마감시간(virtual deadline)을 도입하여 고‑중요도 작업과 저‑중요도 작업을 동시에 스케줄링할 수 있게 해 주는 대표적인 동적‑우선순위 기법이며, AMC는 시스템이 고‑중요도 모드로 전환될 때 저‑중요도 작업을 축소하거나 중단시키는 고정‑우선순위 기반의 적응형 기법이다.
실험 결과는 다음과 같은 중요한 인사이트를 제공한다. 첫째, 제안된 두 파티셔닝 전략 모두 기존 파티셔닝 기법에 비해 전반적인 스케줄러블리티를 크게 향상시켰다. 특히 EDD 전략은 평균적으로 기존 First‑Fit 대비 22.4%의 향상을 보였으며, WDM 전략은 24.7%의 향상을 기록하였다. 둘째, 이러한 향상 효과는 프로세서 수가 증가할수록 더욱 두드러졌다. 예를 들어 32코어 환경에서는 EDD 전략이 기존 Best‑Fit 대비 28.1%까지 스케줄러블리티를 개선했으며, WDM 전략은 30.5%까지 개선하였다. 셋째, 동적‑우선순위 EDF‑VD와 고정‑우선순위 AMC 모두에서 동일한 경향이 관찰되었다. 즉, 파티셔닝 단계에서 차이를 균등하게 배분하는 것이 스케줄링 단계에서 발생하는 비관적 추정(pessimism)을 감소시켜, 두 종류의 스케줄링 정책 모두에게 이득을 제공한다는 것이다. 넷째, 작업의 마감시간 특성에 따라 성능 차이가 나타났다. 암시적(deadline) 마감시간(즉, 모든 작업이 동일한 주기와 마감시간을 갖는 경우)에서는 최대 28.1%까지 스케줄러블리티가 향상되었으며, 제한된(deadline) 마감시간(각 작업마다 서로 다른 마감시간을 갖는 경우)에서는 최대 36.2%까지 향상되었다. 이는 특히 실시간 시스템 설계에서 마감시간 제약이 다양하게 존재할 때, 제안된 파티셔닝 전략이 더욱 큰 효과를 발휘한다는 것을 의미한다.
요약하면, 본 논문은 “고‑중요도와 저‑중요도 작업 간의 활용도 차이를 모든 프로세서에 고르게 분산시키는” 새로운 파티셔닝 원칙을 제시하고, 이를 구현한 두 가지 구체적인 알고리즘(EDD와 WDM)을 개발하였다. 이 알고리즘들은 기존 파티셔닝 기법에 비해 비관적 스케줄러블리티 추정을 현저히 감소시켜, 동적‑우선순위 EDF‑VD와 고정‑우선순위 AMC라는 두 주요 MC 스케줄링 프레임워크 모두에서 스케줄러블리티를 28 % ~ 36 % 정도 향상시키는 실험적 증거를 제공한다. 따라서 제안된 파티셔닝 전략은 향후 복합적인 안전‑보안 요구사항을 갖는 대규모 멀티코어 임베디드 시스템 설계에 있어 강력하고 실용적인 도구가 될 것으로 기대된다. 앞으로의 연구 과제로는 (1) 비선형 작업 모델이나 의존 관계가 있는 작업 집합에 대한 확장, (2) 에너지 효율성 및 온도 관리와 같은 비기능적 요구사항을 동시에 고려한 다목적 파티셔닝 기법 개발, (3) 실시간 운영체제(RTOS)와의 통합을 통한 실제 하드웨어 플랫폼에서의 검증 등이 있다. 이러한 추가 연구를 통해 MC 시스템의 설계·분석·구현 전 과정에서 보다 포괄적인 최적화를 달성할 수 있을 것이다.