Skip to main content
QUICK REVIEW

[논문 리뷰] SQUASH: Simple QoS-Aware High-Performance Memory Scheduler for Heterogeneous Systems with Hardware Accelerators

Hiroyuki Usui, Lavanya Subramanian|arXiv (Cornell University)|2015. 05. 27.
Parallel Computing and Optimization Techniques참고 문헌 37인용 수 8
한 줄 요약

SQUASH는 CPU와 하드웨어 가속기(HWA)를 포함한 이종 시스템을 대상으로 하는 QoS 인식 메모리 스케줄러로, 분산 우선순위, 응용프로그램 인식 우선순위 및 마감시간 기반 스케줄링을 통해 모든 HWA가 마감시간을 준수하면서도 이전 연구 대비 최대 24.0% 향상된 CPU 성능을 확보한다. 이는 메모리 접근 패턴과 단기 마감시간 HWA에 대한 최악의 경우 지연 시간 추정치에 기반해 동적으로 스케줄링을 조정함으로써 달성된다.

ABSTRACT

Modern SoCs integrate multiple CPU cores and Hardware Accelerators (HWAs) that share the same main memory system, causing interference among memory requests from different agents. The result of this interference, if not controlled well, is missed deadlines for HWAs and low CPU performance. State-of-the-art mechanisms designed for CPU-GPU systems strive to meet a target frame rate for GPUs by prioritizing the GPU close to the time when it has to complete a frame. We observe two major problems when such an approach is adapted to a heterogeneous CPU-HWA system. First, HWAs miss deadlines because they are prioritized only close to their deadlines. Second, such an approach does not consider the diverse memory access characteristics of different applications running on CPUs and HWAs, leading to low performance for latency-sensitive CPU applications and deadline misses for some HWAs, including GPUs. In this paper, we propose a Simple Quality of service Aware memory Scheduler for Heterogeneous systems (SQUASH), that overcomes these problems using three key ideas, with the goal of meeting deadlines of HWAs while providing high CPU performance. First, SQUASH prioritizes a HWA when it is not on track to meet its deadline any time during a deadline period. Second, SQUASH prioritizes HWAs over memory-intensive CPU applications based on the observation that the performance of memory-intensive applications is not sensitive to memory latency. Third, SQUASH treats short-deadline HWAs differently as they are more likely to miss their deadlines and schedules their requests based on worst-case memory access time estimates. Extensive evaluations across a wide variety of different workloads and systems show that SQUASH achieves significantly better CPU performance than the best previous scheduler while always meeting the deadlines for all HWAs, including GPUs, thereby largely improving frame rates.

연구 동기 및 목표

  • 이종 시스템에서 기존 메모리 스케줄러가 HWA 마감시간 준수와 높은 CPU 성능 간 균형을 이루지 못하는 한계를 해결하기 위해.
  • 마감시간 직전에만 HWA 우선순위를 높이면 마감시간 위반과 최적 성능 이하의 성능이 발생할 수 있음을 규명하기 위해.
  • CPU 응용프로그램과 HWA의 다양한 메모리 접근 특성을 고려해 전체 시스템 효율성을 향상시키기 위한 스케줄러 설계를 위해.
  • GPU를 포함한 모든 HWA가 일관되게 마감시간을 준수하면서 동시에 지연 민감도가 높은 CPU 워크로드에 대한 간섭을 최소화하기 위해.
  • 공유 메모리 SoC에서 하드웨어 가속기의 실시간 보장을 희생시키지 않고도 높은 시스템 성능을 달성하기 위해.

제안 방법

  • SQUASH는 HWA 진행 상황을 지속적으로 모니터링하여 HWA가 마감시간 경로에서 뒤처질 경우 우선순위를 즉시 상향 조정함으로써, 마지막 단계에서 우선순위를 확보하는 방식이 아니라 분산 우선순위를 사용한다.
  • 메모리 접근이 집중적인 CPU 응용프로그램보다 HWA를 우선순위로 배정함으로써, 이러한 응용프로그램은 메모리 지연에 덜 민감하므로 CPU 성능에 큰 영향을 주지 않으면서도 HWA 진행 속도를 높인다.
  • 단기 마감시간 HWA의 경우, 최악의 경우 메모리 접근 시간 추정치를 기반으로 짧은 고우선순위 버스트를 스케줄링하여 적시 완료를 보장한다.
  • 스케줄링 단위는 1000 사이클, 전환 단위는 500 사이클로 설정되었으며, 이는 성능과 공정성의 균형을 맞추기 위해 경험적으로 선택되었다.
  • 실시간 진행 상황 추적을 기반으로 HWA의 긴급도를 동적으로 분류하고, 이를 바탕으로 우선순위 확률을 조정한다.
  • SQUASH는 기존 메모리 관리 기법(예: 소스 스로틀링, 벙크 파artitioning)과 통합되어 보완적인 스케줄링 기반으로 기능한다.

실험 결과

연구 질문

  • RQ1메모리 스케줄러가 이종 시스템에서 HWA 마감시간을 효과적으로 준수하면서도 높은 CPU 성능을 유지할 수 있는가?
  • RQ2HWA 마감시간 직전에만 우선순위를 높이면 마감시간 위반과 최적 성능 이하의 성능이 발생하는가?
  • RQ3메모리 접근 특성 기반 응용프로그램 인식 우선순위가 HWA 마감시간 준수와 CPU 성능 향상에 기여하는가?
  • RQ4최악의 경우 메모리 접근 시간 추정치를 기반으로 한 스케줄링은 단기 마감시간 HWA의 성능에 어떤 영향을 미치는가?
  • RQ5간단한 예측 불가능한 스케줄링 메커니즘이 실제 워크로드에서 복잡한 마감시간 인식 스케줄러를 능가할 수 있는가?

주요 결과

  • SQUASH는 최고의 이전 스케줄러 대비 최대 24.0% 향상된 CPU 성능을 달성하면서도 모든 HWA 마감시간을 항상 준수한다.
  • 모든 HWA, GPU 포함, 마감시간 이행 비율은 100%로, 일관되고 신뢰할 수 있는 QoS 준수를 보여준다.
  • 지연 민감도가 높은 CPU 응용프로그램보다 HWA를 우선순위로 배정하는 횟수를 지능적으로 줄여, 필요할 때만 스케줄링한다.
  • 분산 우선순위 기법은 마감시간 기간 초반에 성능 이탈을 사전에 대응함으로써, 마지막 순간의 마감시간 위반을 방지한다.
  • 다양한 워크로드에서 SQUASH는 최신 기술 수준의 CPU-GPU 스케줄러 [17]보다 시스템 성능과 마감시간 이행 비율 모두에서 뛰어난 성능을 보인다.
  • 최적의 구성은 스케줄링 단위 1000 사이클, 전환 단위 500 사이클을 사용하며, 성능과 공정성의 균형을 잘 맞춘다.

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

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

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

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