[논문 리뷰] High Level Programming for Heterogeneous Architectures
이 논문은 OpenCL를 위한 고수준 자바 프레임워크인 APARAPI를 확장하여 FPGA의 고수준 프로그래밍을 가능하게 하여 프로그래머블성과 추상화 수준을 향상시켰다. 이는 NBody 시뮬레이션에서 최대 80%의 전력 절감과 5.3×의 성능 향상을, MapReduce 워크로드를 통한 KMeans에서 최대 80%의 전력 절감과 7×의 성능 향상을 달성하여 이질적 아키텍처, 특히 FPGA에서 뛰어난 성능 및 에너지 효율성 향상을 입증한다.
This work presents an effort to bridge the gap between abstract high level programming and OpenCL by extending an existing high level Java programming framework (APARAPI), based on OpenCL, so that it can be used to program FPGAs at a high level of abstraction and increased ease of programmability. We run several real world algorithms to assess the performance of the framework on both a low end and a high end system. On the low end and high end systems respectively we observed up to 78-80 percent power reduction and 4.8X-5.3X speed increase running NBody simulation, as well as up to 65-80 percent power reduction and 6.2X-7X speed increase for a KMeans, MapReduce algorithm running on top of the Hadoop framework and APARAPI.
연구 동기 및 목표
- 이성적인 프로그래밍 모델을 통해 이질적 아키텍처, 특히 FPGA의 프로그래밍 복잡성을 줄이기 위해 자바에서 고수준 추상화를 가능하게 하기 위해.
- 고수준 프로그래밍 모델과 FPGA와 같은 저수준 하드웨어 대상 간의 의미적 격차를 메우기 위해.
- 낮은 수준과 높은 수준의 시스템에서 확장된 프레임워크의 성능 및 에너지 효율성을 평가하기 위해.
- FPGA에서 계산 집약적인 워크로드를 가속화하기 위해 고수준 프레임워크를 사용할 수 있는 가능성을 입증하기 위해.
제안 방법
- OpenCL로 컴iles되는 자바 기반 프레임워크인 APARAPI를 확장하여 FPGA 코드 생성을 지원하도록 한다.
- 기존의 OpenCL 컴파일 파이프라인을 활용하여 하드웨어 대상으로 FPGA를 햖을 때도 고수준 의미를 유지한다.
- 주어진 자바 메서드에 어노테이션을 붙여 하드웨어 커널으로 변환하는 Just-in-time (JIT) 컴iles 모델을 사용한다.
- Hadoop MapReduce 프레임워크를 통해 실제 워크로드인 NBody 시뮬레이션과 KMeans 클러스터링을 실행한다.
- 런타임 최적화 및 하드웨어 자원 매핑을 통해 성능 및 에너지 효율성을 향상시킨다.
- 확장된 프레임워크의 확장성과 효율성을 평가하기 위해 저성능 및 고성능 시스템에서 모두 검증한다.
실험 결과
연구 질문
- RQ1낮은 수준의 코딩을 최소화하면서도 고수준 자바 프레임워크를 효과적으로 FPGA를 타겟으로 확장할 수 있는가?
- RQ2이 프레임워크는 이질적 아키텍처에서 성능 및 에너지 효율성 향상에 얼마나 기여하는가?
- RQ3저성능에서 고성능 시스템에 이르기까지 다양한 하드웨어 플랫폼에서 이 프레임워크는 어떻게 확장되는가?
- RQ4고수준 추상화를 사용해 FPGA에서 NBody 및 KMeans 워크로드를 가속화할 경우 성능와 전력 소비 간의 상호 교환 관계는 어떠한가?
주요 결과
- 고성능 시스템에서 NBody 시뮬레이션에 대해 최대 80%의 전력 절감과 5.3×의 성능 향상을 달성했다.
- 저성능 시스템에서 NBody 시뮬레이션에 대해 최대 78%의 전력 절감과 4.8×의 성능 향상을 달성했다.
- 고성능 시스템에서 MapReduce를 통한 KMeans 클러스터링에 대해 최대 80%의 전력 절감과 7×의 성능 향상을 달성했다.
- 저성능 시스템에서 KMeans 워크로드는 최대 65%의 전력 절감과 6.2×의 성능 향상을 기록했다.
- 결과적으로 고수준 추상화가 FPGA에서 경쟁적인 성능 및 에너지 효율성을 달성할 수 있음을 입증했다.
- 확장된 APARAPI 프레임워크는 측정 가능한 성능 향상을 제공하는 이식성 있고 고생산성의 FPGA 프로그래밍을 성공적으로 가능하게 했다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.