Az NVIDIA szerint GPU-kkal akár 8,2-szer gyorsabb lehet a Presto

Az NVIDIA GPU-gyorsított Presto megoldása a vállalat méréseiben akár 8,2-szer rövidebb lekérdezési időt ért el egy nyolc csomópontos Intel Xeon klaszterhez képest. A GB200 NVL72 rendszeren az I/O- és kommunikációs optimalizálások további, 64 százalékos javulást hoztak.
- A DGX B200 nyolc B200 GPU-val 8,2-szer gyorsabb volt egy nyolccsomópontos CPU-s klaszternél.
- A 3K skálafaktornál a gyorsulás 3,6 és 7,8-szer között alakult.
- A GB200 NVL72 tesztben az I/O- és kommunikációs optimalizálások 64 százalékos javulást hoztak.
- A Q11 lekérdezés futási ideje 50 másodpercről 2 másodpercre csökkent INSERT INTO használatával.
- A GPU-gyorsított Presto technikai előzetese a watsonx.data platformon tesztelhető.
Egy DGX B200 is felülmúlta a CPU-s klasztereket
Az NVIDIA Developer július 8-án közzétett bejegyzése a GPU-gyorsított Presto teljesítményét vizsgálta TPC-H-ból származó, 22 analitikai lekérdezést tartalmazó tesztekkel. A mérés Parquet-fájlokat használt, a decimális adattípusokat pedig a bemutatóban lebegőpontos típusokra cserélték. A lekérdezési időbe beleszámított az SQL feldolgozása, a végrehajtási terv optimalizálása, a munkafolyamat futtatása és a végső eredmények visszaküldése is.
A GPU-s konfiguráció egyetlen NVIDIA DGX B200 csomóponton futott, változó számú aktív GPU-val. A rendszerben nyolc Presto GPU-munkás dolgozott, amelyek NVIDIA NVLink 5.0 kapcsolaton kommunikáltak, 1800 GB/s kétirányú sávszélességgel. Az összehasonlítás alapját 8, illetve 10 csomópontos, kétfoglalatos Intel Xeon 6642Y szerverekből álló CPU-s klaszterek adták.
Az 1K skálafaktor körülbelül 1 TB adatot jelentett. Ebben a tesztben a GPU-gyorsított Presto 2,5 és 8,2-szer közötti gyorsulást ért el a CPU-s konfigurációhoz képest, az aktív GPU-k számától függően. Egy B200 GPU 2,5-szer, nyolc B200 GPU pedig 8,2-szer gyorsabb futást eredményezett a nyolccsomópontos CPU-s klaszterhez viszonyítva.
A 3K skálafaktornál, amely körülbelül 3 TB adatkészletet jelentett, a GPU-s rendszer 3 és 8-szor közötti gyorsulást mutatott. Három B200 GPU 3,6-szor, nyolc B200 GPU pedig 7,8-szer gyorsabb volt a tízcsomópontos CPU-s mérésnél.
A GB200 NVL72 rendszeren az I/O lett a kulcskérdés
Az NVIDIA több csomópontra is kiterjesztette a tesztet a GB200 NVL72 rendszeren. A klaszter összesen 18 csomópontból állt, csomópontonként két Grace CPU-val, négy B200 GPU-val és négy ConnectX-7, egyenként 400 Gbps sebességű hálózati kártyával. A méréshez IBM Storage Scale tárolórendszert használtak, amely 20 tárolócsomópontból, 10 PB kapacitásból és körülbelül 4,5 TiB/s csúcsteljesítményből állt.
A tesztben nyolc csomópont, összesen 32 Presto GPU-munkás vett részt. A 10K és 30K skálafaktorú munkaterheléseknél a fejlesztők több lépésben javították a futási időt. Az NVIDIA GPUDirect Storage használata és az I/O-feladatok méretének 4 MiB-ról 16 MiB-ra növelése körülbelül 30 százalékos gyorsulást hozott. További 16 I/O-szál alkalmazása újabb körülbelül 17 százalékos javulást eredményezett.
A nagyobb cserecsomagok és a lekérdezésekben végzett újracsoportosítás, valamint az egyik lekérdezés átírása együtt további 35 százalékkal csökkentette a futási időt. Az NVIDIA szerint az összes I/O- és kommunikációs optimalizálás együttesen 64 százalékos javulást eredményezett.
Egy lekérdezés átírása 50 másodpercről 2 másodpercre gyorsított
A teszt egyik tanulsága a TPC-H Q11 lekérdezés eredménykezelése volt. A SELECT utasításként futtatott lekérdezés körülbelül 50 másodpercig tartott, miközben a klaszterben a GPU-k kihasználtsága 5 százalék alatt maradt. Az NVIDIA szerint a szűk keresztmetszetet az jelentette, hogy a munkás GPU-ról az eredményeket az alapértelmezett HttpExchange megoldáson keresztül kellett visszaküldeni a koordinátornak.
A fejlesztők a SELECT utasítást INSERT INTO formára írták át. Így a GPU-alapú Parquet-író közvetlenül az IBM Storage Scale rendszerben tárolhatta az eredményeket, a futási idő pedig 2 másodpercre csökkent. Az NVIDIA a jövőben a munkások és a koordinátor közötti eredményküldés áteresztőképességét javítaná, hogy ehhez ne legyen szükség a lekérdezések módosítására.
A vállalat szerint a GPU-gyorsított Presto technikai előzeteséhez a watsonx.data platformon lehet hozzáférést regisztrálni. Fejlesztéshez és teszteléshez elérhető a Presto Native gpu-nightly Docker-lemezkép, a telepítéshez pedig külön útmutató készült.
NVIDIA Developer: Running Low-Latency Analytical Workloads with GPU-Accelerated Presto on NVIDIA GB200 NVL72


