फ्री-थ्रेडिंग युग की घोषणा—Python Steering Council का फैसला
(discuss.python.org)ना डोंघी के प्रयासों से फ्री-थ्रेडिंग अब experimental टैग से बाहर आकर आधिकारिक support बन रही है।
Python Steering Council(SC) ने PEP 779 को मंजूरी देते हुए Python 3.14 के free-threaded build से “experimental” टैग हटाने का फैसला किया है। यह निर्णय इस शर्त के साथ लिया गया है कि Phase II के दौरान नीचे दिए गए कार्य पूरे किए जाएँ।
-
C API/ABI compatibility और Stable C API की तैयारी
- मौजूदा API/ABI compatibility को तोड़ने वाले बदलावों पर पहले से C API working group की सहमति जरूरी होगी
- Python 3.15 तक free-threading के लिए समर्पित Stable C API को परिभाषित और उपलब्ध कराया जाएगा
-
नए experimental project के मानदंड
- CPython के भीतर नए experimental project free-threading build के साथ compatible हों और उसी के आधार पर विकसित किए जाएँ
- GIL और free-threading, दोनों को साथ बनाए रखने से आने वाली जटिलता को न्यूनतम रखा जाए
-
performance और memory guardrail
- लक्ष्य: GIL build की तुलना में performance में गिरावट 10 % के भीतर रहे
- अधिकतम 15 % गिरावट / 15 % memory वृद्धि तक के लिए SC की पूर्व सहमति जरूरी होगी (memory upper limit 20 %)
-
documentation requirements
- Python users: standard library API guarantees और बदलावों को स्पष्ट किया जाए
- Python और C API developers: signal, thread safety आदि concurrency guarantees का documentation
- CPython developers: implementation के समय ध्यान रखने योग्य बातों का documentation
- इन सभी सामग्रियों को समेटने वाला आधिकारिक ‘free-threading landing page’ उपलब्ध कराया जाए
-
high-level concurrency primitive की तैयारी
concurrentpackage को केंद्र में रखते हुए, ऐसे high-level concurrency tools का प्रस्ताव और समीक्षा की जाए जिन्हें user अंदरूनी implementation जाने बिना इस्तेमाल कर सके
-
benchmark requirements
- performance, memory और correctness से जुड़े दावों को
pyperformanceआधारित दोहराए जा सकने वाले test से सत्यापित किया जाए - वास्तविक workload को दर्शाने वाले अतिरिक्त benchmark योगदान को प्रोत्साहित किया जाए
- performance, memory और correctness से जुड़े दावों को
SC ने project की प्रगति पर भरोसा जताते हुए सिफारिश की है कि Python community free-threading build को एक औपचारिक supported option के रूप में सक्रिय रूप से promote करे। 3.14 beta 3 में “experimental” टैग आधिकारिक रूप से हटाया जाएगा, जबकि Phase III (free-threading को default या एकमात्र build में बदलना) पर आगे चर्चा होगी.
3 टिप्पणियां
थ्रेड स्वतंत्रता अमर रहे!
वाह!
वाह...!