[논문 리뷰] STOMP: A Tool for Evaluation of Scheduling Policies in Heterogeneous Multi-Processors
STOMP은 이질적 다중프로세서 시스템에서 스케줄링 정책을 평가하기 위한 오픈소스이자 즉시 사용 가능한 이산사건 시뮬레이터로, 도메인 특화 SoC에서 작업 스케줄링 알고리즘의 빠른 프로토타이핑과 검증을 가능하게 한다. 폐쇄형 모델과 비교했을 때 안정상태 응답 시간 분석에서 평균 상대 오차가 0.50%에서 1.45%에 이르며 높은 정확도를 달성한다.
The proliferation of heterogeneous chip multiprocessors in recent years has reached unprecedented levels. Traditional homogeneous platforms have shown fundamental limitations when it comes to enabling high-performance yet-ultra-low-power computing, in particular in application domains with real-time execution deadlines or criticality constraints. By combining the right set of general purpose cores and hardware accelerators together, along with proper chip interconnects and memory technology, heterogeneous chip multiprocessors have become an effective high-performance and low-power computing alternative. One of the challenges of heterogeneous architectures relates to efficient scheduling of application tasks (processes, threads) across the variety of options in the chip. As a result, it is key to provide tools to enable early-stage prototyping and evaluation of new scheduling policies for heterogeneous platforms. In this paper, we present STOMP (Scheduling Techniques Optimization in heterogeneous Multi-Processors), a simulator for fast implementation and evaluation of task scheduling policies in multi-core/multi-processor systems with a convenient interface for "plugging" in new scheduling policies in a simple manner. Thorough validation of STOMP exhibits small relative errors when compared against closed-formed equivalent models during steady-state analysis.
연구 동기 및 목표
- 이질적 다중프로세서 시스템에서 초기 단계의 스케줄링 정책 평가를 위한 유연하고 오픈소스 도구의 부족을 해결하기 위해.
- 다양한 처리 요소를 갖춘 도메인 특화 SoC에서 새로운 스케줄링 알고리즘의 빠른 프로토타이핑과 비교를 지원하기 위해.
- 초보자 사용자에게는 사용이 용이하고 전문가 사용자에게는 구성 가능성을 갖춘 시뮬레이션 환경을 제공하기 위해.
- 다양한 시스템 활용도와 워크로드 특성 하에서 분석 모델과의 정확도를 검증하기 위해.
- 저수준 시뮬레이터 코드 수정 없이 연구자들이 쉽게 사용자 정의 스케줄링 정책을 삽입하고 평가할 수 있도록 하기 위해.
제안 방법
- STOMP은 QUTE 프레임워크 기반의 큐 기반 이산사건 시뮬레이션 모델을 사용하며, 확률적 및 트레이스 기반 실행 모드를 모두 지원한다.
- 일반 목적 코어, GPU, 가속기, DSP 등을 포함한 구성 가능한 처리 요소를 갖춘 이질적 시스템을 모델링한다.
- 응용 프로그램은 합성 또는 실제 프로파일링 데이터에서 유도된 방향 무순환 그래프(DAG)로 표현된다.
- 사용자가 내부 코드를 수정하지 않고도 새로운 스케줄링 정책을 구현하고 테스트할 수 있는 즉시 사용 가능한 인터페이스를 제공한다.
- 두 가지 시뮬레이션 모드를 지원한다: 확률적(작업 도착 및 서비스 시간에 대해 구성 가능한 확률 분포 사용) 및 현실적(실제 워크로드에서 생성된 트레이스 파일 사용).
- 시뮬레이션 후 STOMP은 응답 시간, 대기 시간, 큐 크기 히스토그램, 각 작업 및 처리 요소 유형별 프로세서 활용도를 포함한 세부 통계를 생성한다.
실험 결과
연구 질문
- RQ1STOMP은 분석 모델과 비교해 이질적 다중프로세서 시스템의 안정상태 응답 시간을 얼마나 정확하게 시뮬레이션할 수 있는가?
- RQ2작업 도착률과 서비스 시간 분포가 다를 경우 스케줄링 정책의 성능는 어떻게 변화하는가?
- RQ3남은 시간 추정에 의존하는 정책은 계산 시간 분산이 높을 경우 어떻게 성능에 영향을 받는가?
- RQ4STOMP의 시뮬레이션 정밀도는 도메인 특화 SoC에서 스케줄링 알고리즘의 초기 탐색을 어느 정도 지원하는가?
- RQ5STOMP은 저수준 시뮬레이터 수정 없이도 새로운 스케줄링 정책의 효율적이고 민감하며 정확한 평가를 가능하게 하는가?
주요 결과
- STOMP은 안정상태 응답 시간 분석에서 작은 상대 오차를 보이며, 한 서버일 경우 0.50%, 두 서버일 경우 0.83%, 세 서버일 경우 1.45%의 오차를 보였다. 이는 폐쇄형 모델과 비교한 결과이다.
- 평균 작업 도착 시간이 감소함에 따라 작업 큐 크기가 크게 증가하며, 도착 시간이 50 단위일 경우 큐가 비어 있는 경우가 54%였고, 100 단위일 경우 94%였다.
- 정확한 잔여 시간 추정에 의존하는 정책(예: v3 및 v4)은 계산 시간 분산이 증가함에 따라 추정 정확도 저하로 인해 더 높은 응답 시간을 보였다.
- 계산 시간 분산이 높을 경우 v5 정책은 더 견고한 잔여 시간 추정 방법을 사용하여 성능 저하를 줄이며 v3 및 v4보다 우수한 성능을 보였다.
- 시뮬레이터의 트레이스 기반 모드를 통해 실제 워크로드 프로파일을 사용해 정확한 시뮬레이션을 수행할 수 있으며, 스케줄링 정책의 현실적인 평가를 지원한다.
- STOMP의 오픈이고 모듈러한 설계 덕분에 연구자들이 새로운 스케줄링 정책을 쉽게 삽입할 수 있어 빠른 실험과 비교를 촉진한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.