ArchSim: 서비스로서의 컴퓨터 구조 시뮬레이션 (Computer Architecture Simulation as a Service)
요약
ArchSim은 컴퓨터 구조 시뮬레이션 연구의 복잡성을 해결하기 위해 제안된 새로운 프레임워크입니다. 선언적 그래프와 상태가 없는 러너를 통해 시뮬레이션 과정을 자동화하고 구조화하여 연구의 재현성과 확장성을 높였습니다.
핵심 포인트
- 선언적 그래프를 통한 시뮬레이션 코드 자동 생성
- 수동 오케스트레이션 없는 확장 가능한 실험 실행
- 구조화된 아티팩트 저장으로 체계적인 결과 분석 지원
- 기존 MGPUSim 대비 매우 낮은 커널 시간 오차 기록
- 시뮬레이션당 1.6초의 무시할 만한 오버헤드
완전한 컴퓨터 구조 시뮬레이션 (computer architecture simulation) 연구를 수행하는 것은 구성 (configuration), 실행 (execution), 분석 (analysis)이 명시적으로 표현되기보다 스크립트나 디렉토리 관례에 암묵적으로 인코딩되어 있는 경우가 많기 때문에 매우 어렵습니다. 그 결과, 연구를 확장하기 어렵고, 재현하기 힘들며, 모든 단계에서 커스텀 툴링 (custom tooling)에 의존하게 됩니다. 우리는 시뮬레이션 연구의 구조를 명시적으로 만드는 ArchSim을 제시합니다. ArchSim에서 하드웨어 토폴로지 (hardware topologies)는 선언적 그래프 (declarative graphs)로 기술되어 실행 가능한 시뮬레이션 코드를 자동으로 생성하며, 이를 통해 수동으로 작성된 시뮬레이터 프로그램을 제거합니다. 상태가 없는 러너 (Stateless runners)는 공유된 실험 저장소 (experiment store)에서 작업을 자율적으로 가져와 실행하며, 이를 통해 구성-벤치마크 행렬 (configuration-benchmark matrices)을 수동 오케스트레이션 (manual orchestration) 없이 확장할 수 있습니다. 시뮬레이션 출력물은 구성, 벤치마크 및 하드웨어 구성 요소와 연결된 구조화된 아티팩트 (structured artifacts)로 저장되어, 커스텀 파서 (custom parsers) 없이도 체계적인 결과 탐색이 가능합니다. 우리는 메모리 제한적 (memory-bound), 연산 제한적 (compute-bound), 그리고 혼합 강도 (mixed-intensity) GPU 워크로드를 아우르는 12 x 8 = 96개 구성의 시뮬레이션 행렬에서 ArchSim을 평가합니다. 선언적 시뮬레이션 사양 (Declarative simulation specifications)은 전체 시뮬레이션을 구동하며, 구성의 95.8%에 대해 수동으로 작성된 MGPUSim 구성 대비 커널 시간 오차 중앙값이 0.18%를 기록했습니다. 이 플랫폼은 시뮬레이션당 단 1.6초의 오버헤드 (overhead)만을 도입하며, 이는 실제적인 시뮬레이션 워크로드와 비교했을 때 무시할 수 있는 수준입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.AR의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기