[논문 리뷰] Automated Space/Time Scaling of Streaming Task Graph
이 논문은 현장 프로그래머블 게이트 어레이(FPGA)의 다수의 병렬 처리 장치(MPPA)를 대상으로 스트리밍 작업 그래프(STG)를 위한 자동 고수준 합성(HLS) 도구를 제안한다. 이 도구는 노드 복제, 분할, 병합를 통해 동적 면적-처리량 트레이드오프를 가능하게 한다. 공간/시간 스케일링 최적화를 위해 정수선형계획법(ILP)과 새로운 휴리스틱을 모두 사용하며, 결과적으로 휴리스틱이 형식적 방법으로 접근할 수 없는 우수한 설계 포인트를 발견함으로써 ILP를 초월하는 성능을 보여준다.
In this paper, we describe a high-level synthesis (HLS) tool that automatically allows area/throughput trade-offs for implementing streaming task graphs (STG). Our tool targets a massively parallel processor array (MPPA) architecture, very similar to the Ambric MPPA chip architecture, which is to be implemented as an FPGA overlay. Similar to Ambric tools, our HLS tool accepts a STG as input written in a subset of Java and a structural language in the style of a Kahn Processing Network (KPN). Unlike the Ambric tools, our HLS tool analyzes the parallelism internal to each Java "node" and evaluates the throughput and area of several possible implementations. It then analyzes the full graph for bottlenecks or excess compute capacity, selects an implementation for each node, and even considers replicating or splitting nodes while either minimizing area (for a fixed throughput target), or maximizing throughput (for a fixed area target). In addition to traditional node selection and replication methods used in prior work, we have uniquely implemented node combining and splitting to find a better area/throughput trade-off. We present two optimization approaches, a formal ILP formulation and a heuristic solution. Results show that the heuristic is more flexible and can find design points not available to the ILP, thereby achieving superior results.
연구 동기 및 목표
- FPGA의 다수의 병렬 처리 장치(MPPA) 아키텍처를 위한 스트리밍 작업 그래프(STG)의 자동 고수준 합성(HLS)을 가능하게 한다.
- 작업 그래프 구성요소의 런타임 최적화를 통해 동적 면적/처리량 트레이드오프를 지원한다.
- 이전 연구를 향상시키기 위해 복제 및 선택 외에 노드 병합과 분할을 도입한다.
- 확장 가능한 설계 공간 탐색을 위한 형식적(ILP) 및 휴리스틱 최적화 전략을 개발한다.
- 휴리스틱 기반 접근 방식이 ILP 기반 방법에 비해 뛰어난 설계 포인트를 발견함을 입증한다.
제안 방법
- 도구는 자바의 일부 집합과 칸 프로세스 네트워크(KPN) 스타일의 구조적 언어로 기술된 STG를 수용한다.
- 각 STG 노드 내부의 고유한 병렬성을 분석하여 처리량과 면적을 고려한 다양한 구현 옵션을 평가한다.
- 시스템 수준 분석을 통해 그래프 전반의 병목 현상 또는 미사용된 계산 자원을 탐지한다.
- 노드 복제, 분할, 병합을 적용하여 다양한 면적-처리량 트레이드오프를 탐색한다.
- 최적화 문제를 정수선형계획법(ILP)으로 수식화하여 형식적 해법을 도출하고, 넓은 탐색 범위를 확보하기 위해 휴리스틱을 구현한다.
- 휴리스틱은 ILP로 접근할 수 없는 설계 포인트를 탐색할 수 있게 하여 유연성과 성능을 향상시킨다.
실험 결과
연구 질문
- RQ1자동화된 HLS 도구는 MPPA 아키텍처를 위한 스트리밍 작업 그래프의 설계 공간을 효과적으로 탐색할 수 있는가?
- RQ2노드 병합 및 분할은 기존의 복제 및 선택 기법에 비해 면적-처리량 트레이드오프를 어떻게 향상시키는가?
- RQ3휴리스틱 기반 최적화와 ILP 기반 최적화의 상대적 성능은 최적의 설계 포인트를 발견하는 데서 어떻게 다를까?
- RQ4휴리스틱 접근 방식은 형식적 ILP 수식으로는 도달할 수 없는 우수한 설계 포인트를 발견할 수 있는가?
- RQ5제안된 방법은 고정된 면적 제약 조건 하에서 처리량을 얼마나 향상시키거나, 고정된 처리량 목표 하에서 면적을 얼마나 줄일 수 있는가?
주요 결과
- 휴리스틱 최적화 접근 방식은 ILP 수식으로는 도달할 수 없는 설계 포인트를 발견하여 설계 공간 탐색의 유연성을 크게 향상시킨다.
- 특히 복잡하고 비정형적인 작업 그래프에서 휴리스틱은 ILP에 비해 뛰어난 면적-처리량 트레이드오프를 달성한다.
- 노드 병합 및 분할 기법은 설계 공간을 크게 확장하여 하드웨어 자원의 보다 효율적인 활용을 가능하게 한다.
- 도구는 고정 처리량 조건 하에서 면적 최소화와 고정 면적 조건 하에서 처리량 최대화라는 두 가지 설계 목표를 모두 성공적으로 지원한다.
- 결과적으로 FPGA 기반 MPPA 아키텍처에서 스트리밍 워크로드를 위한 런타임 인식 최적화를 통한 고수준 합성의 효과성을 입증한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.