1 puan yazan GN⁺ 2023-10-22 | 1 yorum | WhatsApp'ta paylaş
  • Python Yürütme Kurulu, global interpreter lock (GIL) mekanizmasını gelecekteki Python sürümlerinde isteğe bağlı hale getirmeyi planladığını açıkladı
  • Hâlâ tartışılmakta olan bir teklif olan PEP 703’ün ayrıntıları netleştiriliyor
  • GIL’siz Python sürümünün, bilgisayar bilimindeki en zor sorunlardan bazılarının, özellikle de adlandırma sorunlarının çözümünü gerektirmesi bekleniyor
  • PEP 703’ün yazarı Sam Gross, teklif ile CPython kararlı ABI arasındaki etkileşimi tartıştı
  • Kararlı ABI, birden fazla CPython sürümüyle uyumlu binary wheel’leri etkinleştirmek için uzantılarda kullanılıyor
  • Teklif, GIL’siz tek bir CPython sürümünü öngörüyor; ancak bu arada no-GIL çalışmasını test etmeye yarayan interpreter build’leri olacak
  • Kararlı ABI için oluşturulan uzantılar no-GIL CPython 3.13 ile uyumlu değil; ancak Gross, bu sürümden sonra uzantıların iki tür CPython build’iyle de çalışacak şekilde değiştirilmesini öneriyor
  • no-GIL sürümünün adlandırılmasına ilişkin tartışma ayrı bir iş parçacığına ayrıldı
  • Yürütme Kurulu, build’i tanımlamak için "nogil" adından kaçınma konusunda anlaştı ve alternatif olarak "free-threading" önerildi
  • PEP 703 için nihai onay henüz beklemede ve Yürütme Kurulu, onay ölçütlerini netleştirmek için çalışıyor
  • CPython’ın no-GIL sürümünün, önümüzdeki 5 yıl ve sonrasında CPython geliştirmesi ve ekosistemi üzerinde önemli bir etkisi olması bekleniyor

1 yorum

 
GN⁺ 2023-10-22
Hacker News görüşleri
  • No-GIL CPython’ın geliştirme durumuna ilişkin tartışma
  • Açık paralelliğin modern bilişimde daha önemli hale gelmesi gerektiği ve Python’ın bu trende uyum sağlaması gerektiği görüşü öne sürülüyor
  • GIL kaldırılırsa çok iş parçacıklı Python kodunda veri yarışları ve hatalı işlemler ortaya çıkabileceğine dair endişeler
  • GIL kaldırıldıktan sonra mevcut Python programlarındaki potansiyel sorunları tespit edebilecek bir statik analiz aracının uygulanabilirliğine dair soru
  • Bazı yorumcular Python’ın evrimini OCaml ile karşılaştırıyor ve iki proje arasında benzerlikler olup olmadığını merak ediyor
  • GIL’siz Python’a yönelik mevcut odağa dair tartışma; bazıları gerçek çoklu iş parçacıklılıktan ziyade iyileştirilmiş tek iş parçacıklı performansı savunuyor
  • Bazı yorumcular GIL’i koruyup JavaScript’tekine benzer Workers eklenmesini öneriyor; her worker iş parçacığı kendi GIL’ine sahip yalıtılmış bir VM olur
  • Python 2’den Python 3’e uzun ve zorlu geçiş de tartışılıyor; bazıları Python topluluğunun bu fırsatı yorumlayıcı iç yapısında daha büyük değişiklikler yapmak için kullanabileceğini öne sürüyor
  • No-GIL Python’dan fayda görebilecek potansiyel uygulamalar ve servisler ile geliştiricilerin bu gelişmeden ne beklediğine dair merak dile getiriliyor