SEAM-V: 지속적인 벡터 처리량을 위한 백엔드 가시적 EP 컨텍스트를 갖춘 하이브리드 분리형 RISC-V 벡터 프로세서
요약
SEAM-V는 RISC-V 벡터 확장을 위한 하이브리드 분리형 실행 아키텍처를 제안합니다. 태스크 수준의 분리와 실행 패킷(EP) 컨텍스트를 활용하여 벡터 명령어 공급 공백을 줄이고 처리량을 극대화합니다.
핵심 포인트
- 하이브리드 분리형 아키텍처를 통한 벡터 명령어 공급 효율 개선
- 실행 패킷(EP) 기반의 동적 백엔드 관리 및 프리페칭 지원
- 기존 밀결합형 구현 대비 평균 1.34배의 속도 향상 달성
- BLAS 및 행렬 연산 등 다양한 워크로드에서 높은 성능 입증
딥러닝 및 과학 계산에서의 데이터 병렬 워크로드(Data-parallel workloads)는 더 높은 프로세서 처리량(throughput), 에너지 효율성 및 확장성에 대한 수요를 지속적으로 견인하고 있습니다. RISC-V 벡터 확장(RVV)은 벡터 길이 불가지론적(vector-length-agnostic) 프로그래밍 모델을 통해 확장 가능한 실행을 지원합니다. 그러나 많은 밀결합형(tightly coupled) 구현체들은 여전히 스칼라 코어(scalar core)가 벡터 명령어를 하나씩 공급하는 방식에 의존하고 있으며, 이로 인해 실행 시 벡터 명령어 공급 공백(vector-instruction supply gaps), 스칼라 측 진행 지연(scalar-side progression delays), 그리고 짧은 벡터(short-vector), 루프 테일(loop-tail), 제어/메모리 인터리브(control/memory-interleaved) 단계에서의 보수적인 의존성 처리(dependence handling) 문제에 취약합니다. 본 논문에서는 RVV를 위한 하이브리드 분리형(hybrid-decoupled) 벡터 실행 아키텍처인 SEAM-V를 제시합니다. SEAM-V는 태스크 수준의 분리(task-level decoupling), 로컬 명령어 공급(local instruction supply), 그리고 VLIW 스타일의 패킹(packing)을 통해 실행 패킷(execute packets, EPs)의 연속적인 스트림을 형성합니다. EP가 개별 요청으로 직렬화된 후, 해당 EP 식별자(identity)와 요청 바운드 프리페치 컨텍스트(request-bound prefetch context)는 동적 벡터 백엔드(dynamic vector backend)에 가시적으로 유지되어, 동일 EP 후보 해저드 억제(same-EP candidate-hazard suppression) 및 요청 바운드 프리페칭(request-bound prefetching)을 가능하게 합니다. 하이브리드 디스패치(hybrid-dispatch) 경로는 필요한 안전 조건이 충족될 때 제한적인 교차 EP(cross-EP) 벡터 중첩(overlap)을 제공할 수도 있습니다. EP 계약(EP contract)에 의해 면제되지 않은 의존성, 교차 EP 의존성(Cross-EP dependences), 자원 충돌(resource conflicts) 및 메모리 순서(memory ordering)는 백엔드에 의해 동적으로 관리됩니다. 사이클 정밀 RTL 평가 결과, Ara 기반의 밀결합형 RVV 구현(TC)과 비교했을 때, SEAM-V는 17개의 대표적인 커널(kernels)에 대해 1.34배의 기하 평균 속도 향상(geometric-mean speedup)을 달달성했습니다. 1차원 가변-AVL(one-dimensional variable-AVL), BLAS 및 행렬(matrix), 그리고 고정 크기 애플리케이션 그룹은 각각 1.50배, 1.25배, 1.27배의 속도 향상을 달성했습니다. AVL=32일 때, 6개의 1차원 벡터 커널에 대한 기하 평균 속도 향상은 3배에 달합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AR의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기