1 पॉइंट द्वारा GN⁺ 2023-10-22 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Python स्टीयरिंग काउंसिल ने घोषणा की है कि वह भविष्य के Python रिलीज़ में Global Interpreter Lock (GIL) को वैकल्पिक बनाने की योजना बना रही है
  • अभी चर्चा में चल रहे प्रस्ताव PEP 703 के विवरण अभी तय किए जा रहे हैं
  • no-GIL संस्करण का Python कंप्यूटर साइंस की कुछ सबसे कठिन समस्याओं, खासकर naming problem, को हल करने की उम्मीद करता है
  • PEP 703 के लेखक Sam Gross ने प्रस्ताव और CPython stable ABI के बीच के इंटरैक्शन पर चर्चा की
  • stable ABI का उपयोग extensions में कई CPython versions के साथ compatible binary wheels सक्षम करने के लिए किया जाता है
  • प्रस्ताव GIL के बिना CPython के एक single version की कल्पना करता है, लेकिन उससे पहले ऐसे interpreter builds होंगे जिनमें no-GIL व्यवहार को test किया जा सकेगा
  • stable ABI के लिए बनाए गए extensions no-GIL CPython 3.13 के साथ compatible नहीं होंगे, लेकिन Gross ने उस version के बाद extensions को इस तरह बदलने का प्रस्ताव दिया है कि वे दोनों प्रकार के CPython builds के साथ काम कर सकें
  • no-GIL संस्करण के naming पर चर्चा को अलग thread में विभाजित किया गया है
  • स्टीयरिंग काउंसिल ने builds का वर्णन करने के लिए "nogil" नाम से बचने पर सहमति जताई है और "free-threading" को विकल्प के रूप में सुझाया है
  • PEP 703 की अंतिम मंज़ूरी अभी लंबित है, और स्टीयरिंग काउंसिल मंज़ूरी के मानदंड स्पष्ट करने पर काम कर रही है
  • no-GIL CPython संस्करण के आने वाले 5 वर्षों या उससे अधिक समय तक CPython development और ecosystem पर महत्वपूर्ण प्रभाव पड़ने की उम्मीद है

1 टिप्पणियां

 
GN⁺ 2023-10-22
Hacker News की राय
  • No-GIL CPython की प्रगति की स्थिति पर चर्चा
  • यह राय कि आधुनिक computing में explicit parallelism को अधिक महत्वपूर्ण होना चाहिए और Python को इस रुझान के अनुसार ढलना चाहिए
  • GIL हटने पर multi-threaded Python code में data race और गलत operations होने की संभावना को लेकर चिंता
  • यह प्रश्न कि क्या GIL हटने के बाद मौजूदा Python programs में संभावित समस्याओं की पहचान करने वाला static analyzer व्यावहारिक होगा
  • कुछ commenters ने Python के विकास की तुलना OCaml से की और सोचा कि क्या दोनों projects के बीच समानताएँ हैं
  • GIL-रहित Python पर मौजूदा फोकस को लेकर बहस, जहाँ कुछ ने true multithreading की बजाय बेहतर single-thread performance का समर्थन किया
  • कुछ commenters ने सुझाव दिया कि GIL को बनाए रखते हुए JavaScript जैसे Workers लाए जाएँ, जहाँ हर worker thread अपनी GIL वाला isolated VM हो
  • Python 2 से Python 3 तक के लंबे और कठिन transition पर भी चर्चा हुई, और कुछ ने कहा कि Python community इस मौके का उपयोग interpreter internals में बड़े बदलाव लाने के लिए कर सकती थी
  • No-GIL Python से लाभ उठाने वाले संभावित applications और services, तथा developers इस development से क्या उम्मीद कर रहे हैं, इस पर जिज्ञासा व्यक्त की गई