PyTorch 2.15 uvodi prerađeni backend za Nvidia Collective Communications Library, poznatu kao NCCL, sa fokusom na stabilniji rad sistema u kojima više grafičkih procesora istovremeno obrađuje velike modele. Glavna promena je bolje rešavanje problema sa pojedinačnim GPU-om koji kasni, usporava ili potpuno otkazuje, bez neophodnog ponovnog pokretanja celog zadatka.

NCCL je Nvidia biblioteka koja omogućava brzu razmenu podataka između grafičkih procesora, u jednom računaru ili između više mašina. Važna je pri distribuiranoj obradi jer radnici neprestano razmenjuju tenzore, gradijente, aktivacije i težine. U velikim konfiguracijama, standardni mrežni saobraćaj zasnovan na TCP-u može da stvori uska grla, dok NCCL koristi optimizovane putanje i smanjuje opterećenje procesora.

Prethodni NCCL backend u PyTorch-u, ProcessGroupNCCL, mogao je da otvori desetine komunikatora za jednu procesnu grupu. To je nosilo rizik od povremenih zastoja, blokiranja i nepredvidivih performansi. Nova verzija postavlja jednostavnije pravilo: pri inicijalizaciji, svaka procesna grupa koristi samo jedan komunikator.

Ako je programu potreban paralelan rad, moraće da koristi dodatne procesne grupe. Ovakav pristup ograničava međusobni uticaj više komunikatora i smanjuje složenost njihovog upravljanja.

Obnovljeni backend omogućava i lakšu rekonfiguraciju kada neki grafički procesor postane problematičan. Spoljni sistem za orkestraciju može da isključi radnika koji zaostaje i dodeli zamenu. To je posebno značajno za duge distribuirane zadatke, kod kojih je kvar jednog dela klastera do sada mogao da znači gubitak celog izvršenog rada.

PyTorch 2.15 dobija i takozvani snimač događaja, koji čuva niz snimaka operacija pre prekida ili zastoja. Umesto opšte poruke o grešci posle isteka vremena ili blokiranja, administratori će imati podatke za proveru događaja koji su doveli do problema.

Stara verzija ProcessGroupNCCL ostaje u paketu kao rezervna opcija. Ako se nova implementacija pokaže stabilnom, nasleđena verzija trebalo bi da bude uklonjena sa PyTorch 2.16, planiranim za početak sledeće godine. Izdanje donosi i Python API za asinhroni jednosmerni prenos podataka, kao i poboljšanja za Apple sisteme i podršku za Nvidia Blackwell GPU.