AccelSync: 가속기 파이프라인 프로그램의 동기화 커버리지 검증
요약
본 기술 기사는 AI 가속기 파이프라인 프로그램에서 발생할 수 있는 하드웨어 가시성 데이터 레이스(data races)를 검증하는 새로운 방법론인 AccelSync를 소개합니다. 기존의 시뮬레이션 및 테스트 방식으로는 포착하기 어려운 크로스-유닛 동기화 문제를 해결하기 위해, 제한된 동시 언어와 매개변수화된 하드웨어 이벤트 의미론을 정의했습니다. 이를 통해 프로그램 순서, 동기화 순서, 배리어 순서를 고려하여 '배리어 충분성'이라는 핵심 질문으로 검증 범위를 축소했으며, 실제 LLM 생성 커널에서 높은 결함 탐지율과 낮은 비용 효율성을 입증했습니다.
핵심 포인트
- AccelSync는 AI 가속기의 다단계 파이프라인 프로그램에서 발생하는 하드웨어 가시성 데이터 레이스를 포착하는 새로운 검증 프레임워크입니다.
- 기존 테스트 방식은 크로스-유닛 가시성 의미론을 모델링하지 못하여 결함을 놓치는 한계가 있습니다.
- AccelSync는 '배리어 충분성'이라는 형식화된 질문으로 복잡한 동기화 문제를 단순화하고 정확성을 검증합니다.
- 실제 LLM 생성 커널 테스트에서 19.2%의 높은 결함률을 보였으며, 기존 도구(msSanitizer)가 놓치는 위험 요소를 발견했습니다.
- AccelSync는 커널당 비용이 낮아 실용적이며, 돌연변이 연구를 통해 100% 탐지율을 입증했습니다.
AI 가속기 연산자들은 DMA, 벡터, 행렬, 스칼라 유닛들이 공유 온칩 버퍼에서 동시에 실행되는 다단계 파이프라인 프로그램으로 컴파일됩니다. 누락되거나 잘못 배치된 동기화 프리미티브는 시뮬레이션과 골든 테스트 모두를 우회하는 하드웨어 가시성 데이터 레이스(data races)를 유발합니다. 이는 어느 쪽도 가속기의 크로스-유닛 가시성 의미론(cross-unit visibility semantics)을 모델링하지 못하기 때문입니다. 우리는 가속기 파이프라인 프로그램을 제한된 동시 언어(restricted concurrent language)로 형식화하고, 세 가지 순서 관계—프로그램 순서(program order), 동기화 순서(synchronization order), 및 배리어 순서(barrier order)—를 가진 매개변수화된 하드웨어 이벤트 의미론을 정의하며, 정확성 질문을 배리어 충분성(barrier sufficiency)으로 축소합니다: 즉, 동일 버퍼에 대한 모든 크로스-유닛 쓰기-읽기 쌍이 happens-before로 순서화되는지 여부입니다. 여기서는
이러한 관찰은 후속 드라이버 업그레이드 이후 재현되지 않았습니다. 그리고 120개의 LLM 생성 커널에서 19.2%의 결함률(95% CI: [13.0%, 27.4%])을 나타냅니다. 688개의 비등가 변이체에 대한 돌연변이 연구는 100% 탐지율을 보였으며, 직접 비교 결과 AccelSync는 Huawei의 런타임 정제기 msSanitizer가 놓치는 위험 요소를 발견하며, 커널당 비용은 400배 낮습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AR의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기