Hardverfüggetlen rétegekkel alakítja át a vLLM-et a PyTorch
A vLLM új, hardverfüggetlen rétegeket kap, hogy a projekt a legújabb GPU-kra szabott optimalizációk mellett továbbra is támogassa a régebbi GPU-kat és a külső gyorsítókat. A PyTorch szerint az új megoldás NVIDIA H100-on átlagosan 3,4 százalékon belül marad a natív megvalósítás teljes tokenátbocsátásához képest.
- A vLLM hardverfüggetlen rétegeket fejleszt a különféle gyorsítók támogatására.
- A flat modellek hardver- és modell-specifikus optimalizációkat használnak.
- Az új rétegek megtartják a torch.compile kompatibilitást és a külső bővítmények támogatását.
- NVIDIA H100-on a teljes tokenátbocsátás 3,4 százalékon belül maradt a natív megoldáshoz képest.
A teljesítmény és a hordozhatóság között keres egyensúlyt a vLLM
A PyTorch szeptember 22-i bejegyzése szerint a vLLM belső megvalósítása olyan irányba változik, amely összeférhetetlenné teszi a teljes gráfos torch.compile használatával. Ez a döntés a legújabb, nyílt súlyú modellek és GPU-k teljesítményének javítását szolgálja, ugyanakkor gondot okozhat azoknak, akik külső gyorsítókat, régebbi GPU-kat vagy különlegesebb modelleket használnak.
A vLLM eddig absztrakciós rétegként támogatta a modellek és hardverek széles választékát. A projekt NVIDIA és AMD GPU-kon, Intel XPU-kon, Google TPU-kon, IBM Spyre-on és Huawei Ascenden is működik. A modellek egyre inkább saját rétegekkel és optimalizált kernelekkel érkeznek, ezért a vLLM fejlesztői szerint a korábbi közös absztrakciók egy része már akadályozza a legmagasabb teljesítmény elérését.
A frontier modellek saját, hardverspecifikus utat kapnak
A vLLM-ben jelenleg háromféle modellmeghatározás létezik: az új, flat modellek a vllm/models/ könyvtárban, a régi modellek a vllm/model_executor/models alatt, valamint a Transformers modellezési háttérrendszere. Ezek a megoldások közös rétegeket használnak, például figyelmi mechanizmusokat, lineáris vetítéseket, normálási és aktivációs rétegeket.
Az új frontier modellek már mind flat modellmeghatározást használnak. Ezeknél egyedi összevonásokkal, valamint modell- és hardverspecifikus optimalizációkkal dolgoznak. A PyTorch szerint az NVIDIA Blackwell GPU-k és a rackméretű NVIDIA GB300 NVL72 rendszerek teljesítményének kihasználásához különösen gondos kerneltervezésre van szükség.
A fejlesztésben a kódgeneráló ügynökök, például a Claude Code és az OpenAI Codex is szerepet kapnak. A forrás szerint ezek hatékonyan terveznek egy adott modellhez és hardverhez illesztett optimalizációkat, ha nem kell közben más modellek és gyorsítók kompatibilitásával foglalkozniuk.
Négy alapelvre épülnek az új rétegek
A PyTorch által ismertetett megoldás külön rétegkészletet hoz létre a vLLM-en belül. Ennek célja, hogy a projekt egyszerre tudjon gyorsan fejlődni a legújabb GPU-kra szabott irányban, és megőrizze a különféle hardverek támogatását.
- Fordíthatóság: a modellmeghatározások teljes gráfos torch.compile kompatibilitást kapnak, így a fordítást teljesítményre használó gyorsítók továbbra is alkalmazhatják.
- Bővíthetőség: megmaradnak az olyan mechanizmusok, mint a CustomOp és a PluggableLayer, amelyekkel a külső bővítmények felülírhatják a megvalósítást.
- Elszigeteltség: a hardverfüggetlen út saját rétegeket és műveleteket használ, elkülönítve a hardverspecifikus megoldásoktól.
- Hordozhatóság: a rétegeket natív PyTorch-kóddal vagy hordozható DSL-ekkel, például Tritonnal és Helionnal igyekeznek megvalósítani.
Mit jelent ez a vLLM felhasználóinak?
Az új irány elsősorban azoknak lehet fontos, akik sokféle modellt futtatnak régebbi vagy kevésbé elterjedt hardveren. A PyTorch szerint a külső gyorsítók, például az IBM Spyre, jelenleg a TorchDynamo nyomkövetésére és a TorchInductor alsóbb szintű fordítására támaszkodnak. Ezeknek a bővítményeknek emellett egyedi memóriakiosztást vagy más saját viselkedést is be kell tudniuk építeniük a rétegekbe.
A hardverfüggetlen rétegek ezt a bővíthetőséget külön úton őriznék meg, miközben a frontier GPU-kra optimalizált fejlesztések ettől elkülönülten haladhatnának. Az NVIDIA H100-on mért, három friss modellen számított geometriai átlag alapján az új rétegek teljes tokenátbocsátása 3,4 százalékon belül volt a natív megvalósításhoz képest. A bejelentés szerint így a vLLM a legújabb hardverekre optimalizált teljesítményt és a szélesebb hardvertámogatást egyszerre próbálja fenntartani.
PyTorch: Hardware-Agnostic Models in vLLM
