ÉlőUtoljára: 32 perceMa: 9
Eszközökfrissítve: 01:50

Kísérleti JIT fordítóval gyorsul a Python 3.14 — a GIL-t is eltörölték

A Python 3.14-es verziója egy kísérleti Just-In-Time (JIT) fordítót kapott, amely a leggyakrabban futtatott kódrészleteket gépi kódra fordítja.

Kísérleti JIT fordítóval gyorsul a Python 3.14 — a GIL-t is eltörölték
Fotó: unavailable parts / Unsplash
forrás: Towards Data Science·AI Forradalom szerk.·
Megosztás

A CPython magfejlesztő csapata az elmúlt években végzett architekturális előkészületek után bevezette a Just-In-Time (JIT) fordítót a Python 3.14-es verzióban, amely a leggyakrabban futtatott kódrészleteket gépi kódra fordítja. A cél az volt, hogy növeljék a Python alapértelmezett sebességét anélkül, hogy megtörnék a C-kiterjesztések ökoszisztémáját. (Towards Data Science)

A hagyományos Python (CPython) egy interpretált nyelv: a futtatott kód bájtkódra fordítódik, amit a virtuális gép végrehajt. Az új JIT fordító ezt a folyamatot módosítja: a gyakran használt részeket (hot paths) felismeri, és bájtkódot natív gépi kódra fordítja. Ez jelentősen gyorsíthatja a kódok végrehajtását, mivel a következő hívásnál már nincs szükség interpretációra. A Python 3.14-ben a JIT bekapcsolása a PYTHON_JIT környezeti változóval történik, és a rendszer egy többemeletes (tiering) rendszert használ, ahol először a legolcsóbb futtatási módot, majd a leggyakrabban használt részeknél a JIT-et alkalmazza.

Kapcsolódó: GPU-kernelek Pythonból

JIT integráció az alaptelepítőkbe

A Python 3.14-ben a JIT funkció már az alapértelmezett telepítőkben (.msi és .pkg) megtalálható, így nem szükséges C-fordító a használatához. Ez a „copy-and-patch” technikának köszönhető, amely lehetővé teszi a JIT könnyűsúlyú és hordozható működését különböző CPU-architektúrákon. A funkció továbbra is kísérleti jellegű, de a hivatalos bináris fájlokba való beépítése arra utal, hogy a fejlesztők stabilnak ítélik a széleskörű teszteléshez.

Kapcsolódó: Universal Sparse Tensor

Performancia mérése és tesztelés

A JIT hatásának méréséhez a fejlesztők speciális benchmarkokat használnak, mivel a JIT-nek „felmelegedési” időre van szüksége. Az első futtatások lassabbak lehetnek, míg a rendszer profilozza a kódot, de az ezt követő iterációk jelentősen gyorsabbak lehetnek. A tesztcsomag három CPU-intenzív feladatot tartalmaz: Mandelbrot-függvény számítása, Dijkstra-algoritmus futtatása gráfon, valamint Levenshtein-távolság kiszámítása sztringpárokon. A tesztek eredményei a Python 3.14 hivatalos letöltési oldalán érhetők el.

Kapcsolódó: AI-ügynökök programnyelve

Forrás

Feldolgozott sajtóforrás·Towards Data Science

Eredeti cikk megnyitása →

Ez a cikk a fenti sajtóforrás alapján készült AI-összefoglalóval.

tetszett a cikk? oszd meg →
Megosztás

Tetszik az oldal? Támogasd a fejlesztést

Az AI Forradalom egy automatizált pipeline: napi adatgyűjtés, LLM-feldolgozás és infrastruktúra fenntartása valódi költségekkel jár. Ha értékesnek találod a tömör, naprakész AI-összefoglalókat, egy kávé sokat segít.

Támogatom