오픈소스 머신러닝 프레임워크 파이토치(PyTorch)가 2.15 버전을 내놓았다. 이번 릴리스의 핵심은 엔비디아 집합 통신 라이브러리 NCCL을 다루는 백엔드를 처음부터 다시 만든 것으로, GPU 한 장에 문제가 생겨도 대규모 학습 작업 전체를 처음부터 다시 돌리지 않게 하는 데 목적이 있다.
메타 소프트웨어 엔지니어이자 파이토치 핵심 개발자인 트리스탄 라이스는 5일 유튜브 라이브 방송에서 기존 네트워킹 인터페이스에 기술 부채가 많이 쌓였다고 설명했다. 기존 ProcessGroupNCCL은 프로세스 그룹 하나에서 통신기를 수십 개 만들 수 있었고, 이 때문에 간헐적 교착 상태와 들쭉날쭉한 성능이 나타났다.
새 백엔드는 프로세스 그룹마다 통신기를 하나만 초기화 시점에 만든다. 통신기끼리 서로 간섭하는 일이 기본적으로 사라지며, 병렬성을 더 늘리려면 프로세스 그룹을 추가로 만들어야 한다. GPU가 멈추거나 느려지면 외부 오케스트레이터가 해당 GPU를 제외하고 대체 작업자를 배정하기도 쉬워졌다.
장애 분석 도구도 들어갔다. 플라이트 레코더가 모든 연산을 스냅샷 형태로 기록하므로 관리자는 문제가 생긴 뒤 내용을 열어볼 수 있다. 이전에는 시간 초과나 교착으로 작업이 멈추면 일반적인 오류 메시지만 남는 경우가 많았다.