Skip to main content
QUICK REVIEW

[논문 리뷰] Scheduling of Hard Real-Time Multi-Thread Periodic Tasks

Irina Iulia Lupu, Joël Goossens|arXiv (Cornell University)|2011. 05. 25.
Real-Time Systems Scheduling참고 문헌 14인용 수 3
한 줄 요약

이 논문은 동일한 다중프로세서 환경에서 주기적 다중스레드 실시간 응용 프로그램을 위한 현실적인 작업 모델과 태스크 타당성 분석이 부족한 문제를 해결하기 위해, 주기적 태스크가 서로 독립적인 스레드로 구성되어 복수의 프로세서에서 동시에 실행될 수 있는 새로운 병렬 태스크 모델을 제안한다. 다중스레드 스케줄링이 성공률과 응답 시간 측면에서 감소율이 높아질수록 기존의 갱 스케줄링보다 뛰어나다는 것을 시뮬레이션을 통해 입증한다.

ABSTRACT

In this paper we study the scheduling of parallel and real-time recurrent tasks. Firstly, we propose a new parallel task model which allows recurrent tasks to be composed of several threads, each thread requires a single processor for execution and can be scheduled simultaneously. Secondly, we define several kinds of real-time schedulers that can be applied to our parallel task model. We distinguish between two scheduling classes: hierarchical schedulers and global thread schedulers. We present and prove correct an exact schedulability test for each class. Lastly, we also evaluate the performance of our scheduling paradigm in comparison with Gang scheduling by means of simulations.

연구 동기 및 목표

  • 동일한 다중프로세서 플랫폼에서 주기적 다중스레드 실시간 응용 프로그램을 위한 현실적인 태스크 모델과 태스크 타당성 분석의 부족 문제를 해결하기 위해.
  • 다양한 프로세서에서 동시에 실행될 수 있는 태스크의 독립적 스레드를 허용하는 새로운 병렬 태스크 모델을 설계하기 위해.
  • 고정 태스크 우선순위(Fixed Task Priority, FTP) 및 고정 서브프로그램 우선순위(Fixed Subprogram Priority, FSP) 기반의 예측 가능한 스케줄러인 계층적 및 글로벌 스레드 스케줄러를 개발하기 위해.
  • 모든 스케줄러 유형에 대해 정확한 태스크 타당성 테스트를 제공하여 실시간 시스템의 정확성과 타당성 분석을 보장하기 위해.
  • 제안된 모델이 갱 스케줄링과 비교하여 성능을 실험적으로 평가하기 위해, 특히 성공률과 최악의 응답 시간 측면에서의 성능을 분석하기 위해.

제안 방법

  • 각 주기적 태스크 τi가 오프셋 Oi, 개별 최악 실행 시간 C_i^j를 가진 v_i개의 서브프로그램 집합, 주기 Ti, 상대적 딜레이나이 D_i로 정의되는 형식적 태스크 모델을 도입한다.
  • 태스크(사전 정의된 정의)와 프로세스/스레드(런타임 인스턴스)를 구분하며, 스레드는 가용 프로세서에서 독립적으로 스케줄링된다.
  • 스케줄러를 두 유형으로 분류한다: 계층적 스케줄러(태스크 및 서브프로그램 수준에서 우선순위 할당)와 글로벌 스레드 스케줄러(태스크 구조에 영향을 받지 않는 스레드 우선순위 할당).
  • 스케줄링 행동의 예측 가능성과 태스크의 주기성에 기반한 정확한 태스크 타당성 테스트를 개발하며, 실시간 이론에서 알려진 결과를 활용한다.
  • 합성 워크로드를 사용한 시뮬레이션 기반 평가를 통해 제안된 다중스레드 스케줄러와 갱 스케줄링 간의 성공률과 최악의 응답 시간(WCRT)을 비교한다.
  • 실용성을 평가하기 위해 다단계 태스크(다양한 수준의 병렬성으로 구성된 순차적 단계)로 모델을 확장하며, 계층적 스케줄러에서 비예측성 행동이 나타남을 확인한다.

실험 결과

연구 질문

  • RQ1주기적 태스크의 독립적 스레드가 복수의 프로세서에서 동시에 실행될 수 있도록 하는 현실적인 병렬 태스크 모델을 정의할 수 있는가?
  • RQ2FTP 및 FSP 기반의 계층적 및 글로벌 스레드 스케줄러가 다중스레드 주기적 태스크 환경에서 예측 가능한가?
  • RQ3이러한 스케줄러 유형에 대해 정확한 태스크 타당성 테스트를 형식적으로 유도하고 정당화할 수 있는가?
  • RQ4제안된 다중스레드 스케줄링 방법의 성능은 성공률과 응답 시간 측면에서 갱 스케줄링과 비교해 어떻게 되는가?
  • RQ5순차적 및 병렬 실행 단계를 포함하는 다단계 태스크로 모델을 확장할 경우의 제약 사항은 무엇인가?

주요 결과

  • 16-프로세서 플랫폼에서 이용도 10.4일 때, 제안된 다중스레드 스케줄링 방법은 갱 스케줄링 대비 성공률이 최대 7.5배 높다.
  • 4, 8, 16 프로세서에서 (DM, IM) 스케줄러는 갱 DM 대비 최저 우선순위 태스크의 최악의 응답 시간(WCRT)을 최대 8% 감소시킨다. 프로세서 수가 증가할수록 성능 격차가 커진다.
  • 2-프로세서 플랫폼에서는 (DM, IM)과 갱 DM 간 최저 우선순위 태스크의 WCRT가 동일하지만, 더 큰 플랫폼에서는 성능 우위가 나타난다.
  • (DM, IM) 스케줄러는 최악의 응답 시간 측면에서 테스트된 태스크 시스템의 약 50% 이하에서 갱 DM을 능가하며, 대부분의 경우 더 우수한 응답 시간을 보인다.
  • 제안된 스케줄러는 예측 가능하며 정확한 태스크 타당성 테스트를 허용한다. 이는 이전 방법들이 히وري스틱 또는 충분 조건에 의존하는 것과는 대조된다.
  • 초기화, 병렬 계산, 최종화 단계를 포함하는 다단계 태스크로 모델을 확장하면 계층적 스케줄러에서 비예측성 행동이 발생하며, 시간 이상 현상이 발생하는 반례를 통해 이를 입증한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.