[Paper] Parallax: 이기종 엣지 시스템에서 연산자 폴백을 위한 런타임 병렬화
Source: arXiv - 2512.11532v1
Overview
Parallax는 모바일 AI에서 흔히 발생하는 병목 현상을 해결합니다. 딥‑뉴럴‑네트워크(DNN)에 동적 제어 흐름이나 디바이스 가속기(GPU, NPU, DSP)에서 지원되지 않는 연산자가 포함될 경우, 프레임워크는 CPU로 폴백합니다. 이 폴백은 보통 직렬로 실행되어 많은 CPU 코어가 유휴 상태가 되고 메모리 사용량이 급증하여 지연 시간과 배터리 수명에 악영향을 줍니다. Parallax는 이러한 폴백 구역을 모든 사용 가능한 코어에 자동으로 병렬화하고 메모리를 효율적으로 관리하는 런타임 시스템을 도입합니다—모델을 다시 작성하거나 커스텀 커널을 작성할 필요가 없습니다.
Key Contributions
- 자동 DAG 파티셔닝: 원본 모델에서 독립적인 서브‑그래프를 추출해 폴백 연산자에 숨겨진 병렬성을 드러냅니다.
- 브랜치‑인식 메모리 아레나: 공격적인 버퍼 재사용을 통해 동적 모델의 런타임 메모리 사용량을 크게 낮춥니다.
- 적응형 스케줄러: 현재 메모리 압력과 코어 가용성을 기반으로 런타임에 어떤 서브‑그래프를 가속기와 CPU 중 어디서 실행할지 결정합니다.
- 세분화된 서브‑그래프 제어: 동적 제어 흐름을 가진 모델에 대해 이질적인 실행(CPU + GPU/NPU)을 가능하게 하며, 모델 리팩터링이 전혀 필요 없습니다.
- 포괄적인 평가: 비전 및 AI 분야의 실제 DNN 5개를 세 가지 인기 모바일 디바이스에서 테스트해 **46 %**까지 지연 시간 감소, 30 % 에너지 절감, 기존 최고 프레임워크 대비 평균 ≈27 % 메모리 오버헤드만을 달성했습니다.
Methodology
- 그래프 분석 및 파티셔닝 – Parallax는 모델 로드 시 계산 그래프(DAG)를 검사합니다. 지원되지 않는 연산자와 동적 브랜치를 CPU에서 실행해야 하는 노드를 식별하고, 나머지는 가속기 호환 서브‑그래프로 그룹화합니다.
- 병렬 서브‑그래프 추출 – 독립적인 CPU 서브‑그래프는 여러 코어에서 동시에 실행되도록 스케줄링되고, 가속기 서브‑그래프는 GPU/NPU로 스트리밍됩니다.
- 브랜치‑인식 메모리 관리 – 중간 결과마다 새로운 텐서 버퍼를 할당하는 대신, Parallax는 브랜치별 메모리 아레나를 생성합니다. 브랜치가 종료되면 해당 아레나는 회수되어 이후 브랜치에 재사용되어, 동적 네트워크에서 흔히 발생하는 “메모리 폭발”을 방지합니다.
- 적응형 런타임 스케줄러 – 스케줄러는 디바이스 메모리와 코어 부하를 모니터링합니다. 메모리가 부족하면 낮은 우선순위 브랜치를 직렬화하거나 작은 아레나로 이동하고, 코어가 유휴 상태이면 병렬성을 확대합니다.
- 이질적 실행 엔진 – 얇은 런타임 레이어가 각 서브‑그래프를 적절한 연산 유닛(CPU 또는 가속기)으로 디스패치하고 결과를 결합해 원본 모델 의미를 유지합니다.
Results & Findings
| Device / Model | Baseline (e.g., TensorFlow Lite) | Parallax | Latency Δ | Memory Δ | Energy Δ |
|---|---|---|---|---|---|
| Pixel 6 (GPU) – MobileNetV3 | 120 ms | 68 ms | ‑46 % | +28 % | ‑30 % |
| Snapdragon 888 – YOLO‑v5 | 210 ms | 130 ms | ‑38 % | +22 % | ‑27 % |
| iPhone 14 (Neural Engine) – EfficientDet | 95 ms | 71 ms | ‑25 % | +31 % | ‑22 % |
- Latency: 병렬 CPU 폴백으로 임계 경로를 최대 46 % 단축했습니다.
- Memory: 브랜치‑인식 아레나는 평균 메모리 증가를 30 % 이하로 유지했으며, 이는 단순 폴백 구현에서 보이는 2×‑3× 메모리 폭증에 비해 크게 낮은 수치입니다.
- Energy: 유휴 코어 감소와 실행 시간 단축으로 최대 30 % 에너지 절감이 이루어져 배터리 수명이 연장됩니다.
저자들은 또한 병렬 스케줄러와 메모리 아레나가 전체 성능 향상에 거의 동등하게 기여한다는 것을 확인하는 소거 실험을 수행했습니다.
Practical Implications
- 코드 변경 없이 마이그레이션: 기존 TensorFlow Lite 또는 ONNX 모델을 Parallax에 그대로 넣기만 하면 되므로 빠른 제품 반복에 유리합니다.
- 멀티코어 CPU 활용도 향상: 이전에 폴백 단계에서 거의 사용되지 않던 최신 스마트폰의 모든 코어를 활용할 수 있습니다.
- 예측 가능한 메모리 사용량: AR/VR, 실시간 비디오 분석 등 엄격한 RAM 예산이 요구되는 모바일 앱도 동적 모델을 안전하게 실행할 수 있어 OOM 충돌 위험이 감소합니다.
- 에너지‑인식 배포: 배터리 제약이 큰 IoT 엣지 디바이스에서도 에너지 절감 효과 덕분에 추론 빈도 증가나 고해상도 입력 처리가 가능해집니다.
- 프레임워크‑중립 통합: Parallax 런타임은 모델 로더와 하드웨어 백엔드 사이에 위치하므로 Android NNAPI, CoreML 등 기존 파이프라인에 최소한의 엔지니어링 노력으로 통합할 수 있습니다.
Limitations & Future Work
- 연산자 커버리지: Parallax는 기본 프레임워크가 지원되지 않는 연산자를 식별하는 데 의존합니다; 매우 특수한 커스텀 커널은 수동 등록이 필요할 수 있습니다.
- 정적 스케줄링 오버헤드: 파티셔닝 단계는 모델 로드 시 일회성 비용을 발생시키며, 매우 큰 그래프를 저사양 디바이스에서 로드할 경우 눈에 띄게 느려질 수 있습니다.
- 동적 메모리 피크: 아레나가 평균 메모리를 감소시키지만, 최악의 경우 메모리 피크는 가장 큰 동시 브랜치들의 합에 근접할 수 있어 초저용량 RAM 디바이스에서는 제한이 될 수 있습니다.
- 향후 방향: 저자들은 스케줄러가 런타임 변동(열 스로틀링, 백그라운드 워크로드)에 적응하도록 온라인 학습을 탐구하고, 그래프의 일부를 인근 서버에 오프로드하는 이질적 클러스터(예: 엣지‑클라우드 공동 추론) 지원을 확대할 계획입니다.
Parallax는 순수 하드웨어 가속이 아니라 스마트 런타임 오케스트레이션이 실시간 엣지 AI에서 상당한 성능 및 효율성 향상을 가져올 수 있음을 보여줍니다. 불안정한 CPU 폴백에 고민하는 개발자들에게 모델 코드를 한 줄도 수정하지 않고 더 빠르고 친환경적인 추론을 제공하는 실용적인 길을 제시합니다.
Authors
- Chong Tang
- Hao Dai
- Jagmohan Chauhan
Paper Information
- arXiv ID: 2512.11532v1
- Categories: cs.DC, cs.AI, cs.CV
- Published: December 12, 2025
- PDF: Download PDF