GPU 가속 메가궤도군 전파: jaxsgp4로 1천 배 가속

본 논문은 JAX 기반으로 순수 함수형으로 재구현한 SGP4 구현체 **jaxsgp4**를 소개한다. JIT 컴파일, 정적 제어 흐름, 자동 벡터화(vmap)를 활용해 GPU(특히 A100)에서 수천 개 위성·수천 개 시간 단계의 전파를 동시에 수행한다. 9,341개의 Starlink 위성을 1,000시간 단계까지 4 ms 안에 처리해 기존 C++ 구현 대비 1,500배 속도 향상을 보였으며, 32‑bit 부동소수점 사용이 정밀도 손실을 거의 …

저자: Charlotte Priestley, Will H, ley

GPU 가속 메가궤도군 전파: jaxsgp4로 1천 배 가속
본 논문은 급격히 늘어나는 인공위성 수, 특히 메가궤도군(100 k 위성 이상) 시대에 기존 CPU‑기반 SGP4 전파가 직면한 계산 병목을 해결하고자 한다. 저자들은 JAX 라이브러리를 활용해 **jaxsgp4**라는 순수 함수형 SGP4 구현체를 개발하였다. JAX는 Python 기반의 NumPy‑호환 인터페이스 위에 XLA(Accelerated Linear Algebra) 컴파일러를 두어, JIT 컴파일, 정적 제어 흐름, 자동 벡터화 등을 제공한다. 이를 통해 기존 C++ 구현이 설계된 순차적·상태‑중심 구조를 완전히 탈피하고, 입력‑출력만으로 순수 함수 형태로 재구성하였다. 구현 단계는 크게 세 부분으로 나뉜다. 첫째, **함수형 리팩터링**으로 기존의 객체‑지향 Satellite 클래스와 전역 변수 의존성을 제거하고, 모든 상수와 초기화 로직을 JAX 연산 그래프에 포함시켰다. 둘째, **제어 흐름 변환**을 위해 if/else 문을 jax.lax.cond 등으로 교체해 컴파일 타임에 모든 경로가 트레이싱되도록 하였다. 이는 XLA가 정적 그래프를 최적화할 수 있게 하며, 런타임 분기 비용을 최소화한다. 셋째, **벡터화**를 jax.vmap으로 적용해 위성 파라미터와 시간 배열을 각각 배치 차원으로 확장하였다. 두 단계 vmap을 중첩함으로써 ‘위성 × 시간’이라는 2차원 배치를 한 번에 GPU에 전달하고, 수천 개의 독립 전파를 동시에 수행한다. 성능 평가에서는 NVIDIA T4(16 GB)와 A100(40 GB) GPU를 사용했으며, 기준선은 C++ 공식 구현을 Intel Xeon CPU(2.20 GHz)에서 실행한 결과와 비교하였다. 실험은 Google Colab 환경에서 수행됐으며, 각 측정은 최소 0.2 s 이상 실행된 후 최소값을 기록했다. GPU 전송 및 초기 JIT 컴파일 비용은 제외하고, 순수 전파 커널만을 측정하였다. 결과는 다음과 같다. A100에서 Starlink 전체(9,341 위성)를 1,000시간 단계까지 전파하는 데 4 ms가 소요되었으며, 이는 CPU 기반 C++ 대비 약 1,500배 가속을 의미한다. T4에서도 10배 이상 속도 향상이 관측되었다. 배치 규모가 300~500 정도가 되면 GPU 디스패치 오버헤드가 희석되어 플랫 스케일링 구간에 진입한다는 ‘브레이크이븐’ 포인트가 확인되었다. 정밀도 측면에서는 64‑bit 대신 32‑bit 부동소수점 연산을 선택했음에도, Starlink 실제 TLE와 비교했을 때 평균 위치 오차가 수 센티미터 수준에 머물며, 충돌 회피와 같은 실용적인 SSA 작업에 충분히 정확함을 입증했다. 이는 SGP4 자체가 근사 모델이며, 32‑bit 연산이 제공하는 정밀도 손실이 모델 오차보다 미미함을 시사한다. 추가적으로, jaxsgp4는 **자동 미분**(jax.grad) 기능을 지원한다. 이를 통해 궤도 파라미터에 대한 민감도 분석, 최적화, 베이즈 추정 등 고급 과학·공학 작업에 바로 활용 가능하다. 기존의 ∂SGP4(PyTorch 기반)와 비교했을 때 메모리 사용량과 배치 스케일링 효율이 크게 개선되었으며, 이는 대규모 메가궤도군 시뮬레이션에서 핵심적인 장점이다. 결론적으로, 본 연구는 함수형 프로그래밍과 GPU 배치 병렬성을 결합함으로써, 메가궤도군 시대에 필수적인 대규모 궤도 전파를 실시간 수준으로 끌어올릴 수 있음을 실험적으로 증명한다. jaxsgp4는 오픈소스로 공개되어, 향후 SSA, 충돌 회피, 천문학적 관측 보호 등 다양한 분야에서 바로 적용될 수 있다. 또한, JAX의 하드웨어‑추상화 특성 덕분에 CPU, GPU, TPU 어디서든 동일한 코드베이스로 실행 가능하다는 점도 큰 장점이다.

원본 논문

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

댓글 및 학술 토론

Loading comments...

의견 남기기