대규모 코어를 활용한 인터랙티브 슈퍼컴퓨팅: 40,000코어에서 머신러닝·데이터 분석 실시간 실행
초록
MIT 링컨 연구소 슈퍼컴퓨팅 센터(LLSC)는 40,000코어 규모의 TX‑Green 시스템에서 TensorFlow와 MATLAB/Octave 같은 인터랙티브 워크로드를 수초 내에 시작하도록 스케줄러와 런치 메커니즘을 최적화하였다. 32,000개의 TensorFlow 프로세스를 4초, 262,000개의 Octave 프로세스를 40초에 실행함으로써 대규모 머신러닝·데이터 분석 실험을 즉시 수행할 수 있는 기반을 제공한다.
상세 분석
본 논문은 대규모 인터랙티브 슈퍼컴퓨팅을 구현하기 위해 직면한 네 가지 핵심 기술 과제를 상세히 분석한다. 첫째, 전통적인 배치 스케줄링 방식은 수십 초에서 수분까지의 대기 시간을 초래하므로, 즉시 실행이 가능한 “즉시 스케줄링” 모델을 도입하고 사용자별 리소스 제한을 통해 스케줄러 포화 현상을 방지하였다. 둘째, Slurm을 기반으로 한 작업 배열(job array)과 동기식 병렬 실행(srun) 방식을 비교 실험했으며, 두 방식 모두 수천 코어 수준에서는 유사한 런치 시간을 보였지만, 작업 배열은 작업이 종료되는 즉시 리소스를 회수할 수 있어 전체 시스템 활용률을 높이는 장점이 있었다. 셋째, 파일 시스템 접근 병목을 해소하기 위해 각 Xeon Phi 노드에 MATLAB, Octave, Anaconda 등 전체 소프트웨어 스택을 사전 복제(pre‑position)하고, 로컬 디스크에서 직접 실행하도록 설계했다. 이는 중앙 파일 시스템에 대한 동시 I/O 요청을 크게 감소시켜 수천 개 인스턴스의 시작 시간을 10배 이상 단축시켰다. 넷째, 런치 프로세스 자체를 경량화하기 위해 “MATLAB‑lite” 버전을 제작하고, 시작 단계에서 불필요한 Java 호출을 제거함으로써 프로세스 초기화 지연을 최소화했다. 이러한 최적화 조합은 64코어 Xeon Phi 노드당 4개의 하이퍼스레드당 2개의 Octave 인스턴스를 동시에 구동하면서도 전체 런치 시간을 40초 이하로 유지하게 한다. 또한, TensorFlow의 경우 32,000개의 독립 프로세스를 4초에 시작함으로써 초당 5,120개의 모델을 동시 학습시킬 수 있는 수준에 도달했다. 논문은 이러한 결과가 인터랙티브 머신러닝 실험, 하이퍼파라미터 탐색, 실시간 데이터 스트리밍 분석 등에 직접적인 가치를 제공함을 강조한다.
댓글 및 학술 토론
Loading comments...
의견 남기기