PyTorch 2.15 воведува преработена подлога за Nvidia Collective Communications Library, позната како NCCL, со фокус на постабилна работа на системи во кои повеќе графички процесори истовремено обработуваат големи модели. Главната промена е подобро справување со поединечен GPU што доцни, забавува или целосно откажува, без нужно повторно стартување на целата задача.
NCCL е библиотека на Nvidia што овозможува брза размена на податоци меѓу графички процесори, во еден компјутер или меѓу повеќе машини. Таа е важна при распределена обработка бидејќи работниците постојано разменуваат тензори, градиенти, активации и тежини. Во големи конфигурации, стандардниот мрежен сообраќај базиран на TCP може да создаде тесни грла, додека NCCL користи оптимизирани патеки и го намалува оптоварувањето на процесорот.
Претходната NCCL подлога во PyTorch, ProcessGroupNCCL, можела да отвори десетици комуникатори за една процесна група. Тоа носело ризик од повремени застои, закочувања и непредвидливи перформанси. Новата верзија поставува поедноставно правило: при иницијализација, секоја процесна група користи само еден комуникатор.
Доколку на програмата ѝ е потребна паралелна работа, таа ќе треба да користи дополнителни процесни групи. Со ваквиот пристап се ограничува меѓусебното влијание на повеќе комуникатори и се намалува сложеноста на нивното управување.
Обновената подлога овозможува и полесна реконфигурација кога некој графички процесор стане проблематичен. Надворешен систем за оркестрација може да го исклучи работникот што заостанува и да додели замена. Тоа е особено значајно за долги распределени задачи, кај кои дефект на еден дел од кластерот досега можел да значи губење на целата извршена работа.
PyTorch 2.15 добива и таканаречен снимач на настани, кој зачувува низа снимки од операциите пред прекин или застој. Наместо општа порака за грешка по истек на време или закочување, администраторите ќе имаат податоци за проверка на случувањата што довеле до проблемот.
Старата верзија на ProcessGroupNCCL останува во пакетот како резервна опција. Ако новата имплементација се покаже стабилна, наследената верзија треба да биде отстранета со PyTorch 2.16, планиран за почетокот на следната година. Изданието носи и Python API за асинхрон еднонасочен пренос на податоци, како и подобрувања за Apple системи и поддршка за Nvidia Blackwell GPU.
