7 puan yazan darjeeling 2025-09-16 | Henüz yorum yok. | WhatsApp'ta paylaş

Sonuç

Python 3.14'ün free-threaded derlemesinde asyncio, Global Interpreter Lock'u (GIL) kaldırarak ve iş parçacığı başına durum yönetimine geçerek gerçek paralel yürütmeyi mümkün kıldı. Bunun sonucunda performans iş parçacığı sayısına göre doğrusal olarak ölçekleniyor ve birden fazla olay döngüsünün paralel çalıştırılabilmesi sağlanıyor; bu da yüksek performanslı çok iş parçacıklı asyncio uygulamaları için yeni olanakların önünü açıyor.


Başlıca değişiklikler

  • GIL'in (Global Interpreter Lock) kaldırılması: CPython'ın free-threaded derlemesi, GIL'i kaldırarak birden fazla iş parçacığının aynı anda Python kodu çalıştırabilmesini sağlıyor.
  • İş parçacığı güvenliğinin sağlanması: asyncio, genel veri yapıları yerine iş parçacığı başına durum yönetimi kullanarak iş parçacığı güvenliğini sağladı.
    • Görev depolama: Genel WeakSet yerine iş parçacığı başına dairesel çift bağlantılı liste kullanılarak kilit çekişmesi ve zayıf referans ek yükü ortadan kaldırıldı.
    • Mevcut görevin depolanması: "mevcut görev" iş parçacığı durumunda saklanarak daha hızlı ve kilitsiz erişim mümkün hale getirildi.

Performans artışı

  • Doğrusal performans ölçeklenmesi: Benchmark sonuçları, free-threaded derlemede iş parçacığı sayısı arttıkça asyncio performansının doğrusal olarak arttığını gösterdi.
  • TCP benchmark'ı: GIL'in etkin olduğu derlemeye kıyasla free-threaded derlemede iş hacmi önemli ölçüde arttı.
  • Web scraping benchmark'ı: aiohttp kullanılan web scraping benchmark'ında, free-threaded derlemede birden fazla worker kullanıldığında performans 2 katın üzerinde arttı.

Henüz yorum yok.

Henüz yorum yok.