Skip to main content
QUICK REVIEW

[논문 리뷰] Dynamic load-balancing on multi-FPGA systems: a case study

Volodymyr Kindratenko, Robert J. Brunner|ArXiv.org|2007. 11. 13.
Parallel Computing and Optimization Techniques참고 문헌 10인용 수 6
한 줄 요약

이 논문은 성능을 향상시키기 위해 FPGA 프로세서 간에 워크로드를 재분배함으로써 다중-FPGA 시스템의 동적 로드 밸런싱 기법을 제안한다. 커널 실행을 순차적으로 처리하지만 각 커널 내 워크로드를 두 개의 SRC-6 MAP 프로세서 간에 병렬화함으로써, 이 방법은 거의 100%의 활용도를 달성하고 전체 애플리케이션 성능을 9% 향상시킨다.

ABSTRACT

In this case study, we investigate the impact of workload balance on the performance of multi-FPGA codes. We start with an application in which two distinct kernels run in parallel on two SRC-6 MAP processors. We observe that one of the MAP processors is idle 18% of the time while the other processor is fully utilized. We investigate a task redistribution schema which serializes the execution of the two kernels, yet parallelizes execution of each individual kernel by spreading the workload between two MAP processors. This implementation results in a near 100% utilization of both MAP processors and the overall application performance is improved by 9%.

연구 동기 및 목표

  • 불균형한 워크로드 분포로 인한 다중-FPGA 시스템의 성능 저하 문제 해결.
  • 실제 천체물리학 계산 시나리오에서 로드 불균형이 애플리케이션 성능에 미치는 영향 탐구.
  • FPGA 활용도를 향상시키고 대기 시간을 줄이기 위한 작업 재분배 스키마 개발.
  • 다수의 FPGA 간의 작업 분포 최적화를 통해 전체 애플리케이션 성능 향상.
  • 동적 로드 밸런싱이 병렬 FPGA 워크로드에서 효율성을 크게 향상시킬 수 있음을 입증.

제안 방법

  • 연구는 두 개의 SRC-6 MAP 프로세서를 사용하여 두 가지 다른 계산 커널을 병렬로 실행한다.
  • 워크로드 불균형이 관찰되었으며, 한 FPGA는 18%의 시간 동안 대기 상태였고 다른 FPGA는 완전히 활용되었다.
  • 커널 실행을 순차화하지만 각 커널 내 워크로드를 두 FPGAs 간에 병렬화하는 동적 로드 밸런싱 기법을 도입한다.
  • 각 커널에 대해 데이터 조각을 두 프로세서에 나누어 배분함으로써 FPGA 수준의 병렬성을 활용한다.
  • 두 FPGAs 간의 작업 스케줄링 및 데이터 흐름을 관리하기 위해 고유의 하드웨어 설계를 구현한다.
  • 로드 밸런싱 이전과 이후의 활용도율과 실행 시간을 비교하여 성능을 측정한다.

실험 결과

연구 질문

  • RQ1과학적 워크로드를 실행하는 다중-FPGA 시스템에서 워크로드 불균형은 성능에 어떤 영향을 미치는가?
  • RQ2실제 천체물리학 계산 시나리오에서 동적 로드 밸런싱이 FPGA 활용도를 향상시킬 수 있는가?
  • RQ3다수의 FPGA에 걸쳐 워크로드 재분배를 통해 달성 가능한 성능 향상은 어느 정도인가?
  • RQ4커널 실행을 순차화하면서도 커널 내부에서 병렬화를 수행하면 자원 활용도가 향상되는가?
  • RQ5다중-FPGA 시스템에서 로드 밸런싱은 대기 시간을 어느 정도 줄일 수 있는가?

주요 결과

  • 기본 설정에서 한 FPGA는 18%의 시간 동안 대기 상태였으며, 이는 상당한 활용도 저하를 시사한다.
  • 제안된 로드 밸런싱 기법은 두 FPGA 프로세서 모두 거의 100%의 활용도를 달성했다.
  • 동적 로드 밸런싱 기법을 적용한 후 전체 애플리케이션 성능이 9% 향상되었다.
  • 커널 실행을 순차화했음에도 불구하고 내부 커널 병렬화의 효과가 입증되어 성능 향상이 달성되었다.
  • 워크로드 재분배 전략은 다중-FPGA 시스템의 핫스팟 병목 현상을 성공적으로 완화했다.
  • 결과는 동적 로드 밸런싱이 FPGA 기반 과학 계산에서 효율성을 향상시키는 실현 가능한 접근법임을 확인한다.

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

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

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

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