23-03-2023

PyTorch 2.0 Compiler belooft snelheidsverbetering voor AI-ontwikkelaars

Deel dit bericht

Machine learning- en AI-ontwikkelaars staan klaar om PyTorch 2.0 in handen te krijgen, dat eind 2022 werd onthuld en deze maand beschikbaar komt. Onder de functies die ML-ontwikkelaars begroeten is een compiler evenals nieuwe optimalisaties voor CPU's.

PyTorch is een populaire machine learning bibliotheek ontwikkeld door Facebook's AI Research lab (FAIR) en vrijgegeven voor open source in 2016. De op Python gebaseerde bibliotheek, die werd ontwikkeld bovenop het Torch wetenschappelijk rekenraamwerk, wordt gebruikt om neurale netwerken te bouwen en te trainen, zoals die voor grote taalmodellen (LLM's), zoals GPT-4, en computervisietoepassingen. De eerste experimentele release van PyTorch 2.0 werd in december onthuld door de PyTorch Foundation, die slechts drie maanden eerder was opgericht onder de Linux Foundation. Nu maakt de PyTorch Foundation zich op om deze maand de eerste stabiele versie van PyTorch 2.0 te lanceren.

Een van de grootste verbeteringen in PyTorch 2.0 is torch.compile. Volgens de PyTorch Foundation is de nieuwe compiler ontworpen om veel sneller te zijn dan de vorige on-the-fly generatie van code die werd aangeboden in de standaard "eager mode" in PyTorch 1.0.

De nieuwe compiler verpakt een aantal technologieën in de bibliotheek, waaronder TorchDynamo, AOTAutograd, PrimTorch en TorchInductor. Deze werden allemaal ontwikkeld in Python, in tegenstelling tot C++ (waarmee Python compatibel is). De lancering van 2.0 "zet de stap" terug naar Python vanuit C++, aldus de PyTorch Foundation, die eraan toevoegt "dat dit een substantiële nieuwe richting is voor PyTorch".

De PyTorch Foundation verwacht dat gebruikers beginnen in de niet-gecompileerde "eager mode," die dynamische on-the-fly code generator gebruikt, en nog steeds beschikbaar is in 2.0. Maar het verwacht dat de ontwikkelaars snel zullen overgaan naar de gecompileerde modus met behulp van het porch.compile commando, wat kan worden gedaan met de toevoeging van een enkele regel code, zegt het.

Gebruikers kunnen een 43% boost in compilatietijd verwachten met 2.0 ten opzichte van 1.0, aldus de PyTorch Foundation. Dit getal komt uit benchmarktests die PyTorch Foundation uitvoerde met PyTorch 2.0 op een Nvidia A100 GPU tegen 163 open source modellen, waaronder HuggingFace Tranformers, TIMM en TorchBench. Volgens PyTorch Foundation was de nieuwe compiler 21% sneller bij gebruik van de Float32-precisie modus en 51% sneller bij gebruik van de Automatic Mixed Precision (AMP) modus. De nieuwe torch.compile modus werkte 93% van de tijd.

Partners