워프 기반 고성능 GPU 정적 타이밍 분석 엔진

본 논문은 정적 타이밍 분석(STA)의 GPU 가속 효율을 저해하던 워프 내부 부하 불균형을 워프 단위 작업 스케줄링으로 해소한 Warp‑STAR를 제안한다. 핀 기반 병렬 처리와 Collaborative Task Engagement(CTE) 기법을 통해 기존 GPU 기반 STA 대비 평균 2.4배, CPU 기반 대비 162배의 속도 향상을 달성했으며, 차등 가능한 미분형 STA에서도 연산 오버헤드를 최소화한다.

저자: En-Ming Huang, Shih-Hao Hung

워프 기반 고성능 GPU 정적 타이밍 분석 엔진
본 논문은 전자 설계 자동화(EDA) 흐름에서 핵심적인 역할을 하는 정적 타이밍 분석(STA)의 GPU 가속 효율성을 크게 향상시키는 새로운 엔진인 Warp‑STAR를 제안한다. 기존 GPU 기반 STA 엔진은 넷당 하나의 CUDA 스레드에 작업을 할당하는 방식으로, 넷마다 핀 수가 크게 달라지는 비정형 회로 그래프 특성 때문에 워프 내부 부하 불균형(intra‑warp load imbalance)이 발생한다. 워프는 32개의 스레드가 lockstep으로 실행되기 때문에, 일부 스레드가 긴 루프를 수행하는 동안 다른 스레드는 대기 상태가 되며, 이는 SIMD 라인 활용률을 급격히 저하시킨다. Warp‑STAR는 이러한 문제를 “워프‑중심” 병렬화 전략으로 해결한다. 핵심 아이디어는 넷을 스레드가 아닌 워프 단위 작업 단위로 전환하고, 넷 내부의 핀들을 워프의 32 스레드가 공동으로 처리하도록 하는 것이다. 이를 위해 저자는 3차원 스레드 블록 구성을 제안한다. x축(4)는 4가지 타이밍 조건(early/late, rise/fall)을 담당하고, y축(8)은 8개의 스레드가 모여 32‑스레드 워프를 형성한다. z축은 블록당 처리할 넷 수(NETS_PER_BLOCK)를 지정해 전체 스레드 수를 조절한다. 이렇게 하면 핀 수가 많은 넷도 여러 스레드가 동시에 연산에 참여해 워프 전체가 고르게 활용된다. 핀이 많은 넷에 대해선 각 스레드가 담당하는 핀을 순차적으로 읽어와 load, delay, impulse를 계산한다. 공유 메모리를 이용해 워프 내부에서 동기화(__syncwarp) 후 병렬 축소(reduction) 연산을 수행해 부모 핀에 대한 총 부하를 합산한다. 이 과정에서 원자 연산을 피하고 메모리 접근 패턴을 최적화해 대역폭 효율을 높인다. 또 다른 부하 최적화 기법으로 Collaborative Task Engagement(CTE)를 도입한다. CTE는 블록 수준에서 작업을 재분배하는 방법으로, 각 넷의 핀 수에 비례한 작업량을 사전 스캔(prefix‑sum) 배열에 기록한다. 이후 각 스레드는 이 배열을 기반으로 lower_bound 탐색을 수행해 자신이 담당할 작업(핀)을 동적으로 할당받는다. 이 방식은 워프 간 부하 불균형을 최소화하면서도 스레드 재스케줄링 오버헤드를 제한한다. 연산 파이프라인은 두 단계로 나뉜다. 첫 번째 단계는 RC(Resistive‑Capacitive) 넷 지연 계산이다. Elmore 모델을 사용해 각 핀의 부하(load), 지연(delay), 임펄스(impulse)를 계산한다. 이때 핀별 연산을 워프‑중심으로 수행해 SIMD 라인 활용을 극대화한다. 두 번째 단계는 레벨화(levelization)된 DAG를 따라 전방 전파와 후방 슬랙 전파를 수행하는 단계이다. 레벨화는 설계 초기 한 번만 수행되며, 이후 각 레벨 내의 넷은 워프 단위로 병렬 처리된다. 미분 가능 STA를 지원하기 위해 저자는 연산 흐름에 CUDA 스트림을 활용한 연산 융합(operation fusion)을 적용한다. 전방 전파와 동시에 그래디언트 역전파를 수행함으로써 GPU 유휴 시간을 최소화하고, 기존 INSTA 대비 1.3배 이상의 속도 개선을 달성했다. 성능 평가에서는 2015 ICCAD 콘테스트 데이터셋을 사용해 CPU 기반 OpenTimer(OT) 대비 평균 162배, 최신 GPU 기반 STA 엔진(논문

원본 논문

고화질 논문을 불러오는 중입니다...

댓글 및 학술 토론

Loading comments...

의견 남기기