1 poin oleh GN⁺ 2023-10-22 | 1 komentar | Bagikan ke WhatsApp
  • Steering Council Python mengumumkan rencana untuk menjadikan Global Interpreter Lock (GIL) bersifat opsional pada rilis Python mendatang
  • PEP 703, proposal yang masih dalam pembahasan, sedang memfinalkan detailnya
  • Python versi no-GIL diperkirakan akan menyelesaikan beberapa masalah tersulit dalam ilmu komputer, terutama masalah penamaan
  • Penulis PEP 703 Sam Gross membahas interaksi antara proposal tersebut dan stable ABI CPython
  • Stable ABI digunakan oleh ekstensi untuk mengaktifkan binary wheel yang kompatibel dengan beberapa versi CPython
  • Proposal ini membayangkan satu versi tunggal CPython tanpa GIL, tetapi sementara itu akan ada build interpreter yang memungkinkan pengujian operasi no-GIL
  • Ekstensi yang dibuat untuk stable ABI tidak kompatibel dengan no-GIL CPython 3.13, tetapi Gross mengusulkan perubahan pada ekstensi agar dapat bekerja dengan dua jenis build CPython setelah versi tersebut
  • Pembahasan penamaan untuk versi no-GIL dipisahkan ke thread terpisah
  • Steering Council sepakat untuk menghindari nama "nogil" untuk menjelaskan build tersebut, dan mengusulkan "free-threading" sebagai alternatif
  • Persetujuan akhir PEP 703 masih ditunda, dan Steering Council sedang bekerja untuk memperjelas kriteria persetujuannya
  • CPython versi no-GIL diperkirakan akan memberikan dampak signifikan pada pengembangan CPython dan ekosistemnya selama lebih dari 5 tahun ke depan

1 komentar

 
GN⁺ 2023-10-22
Komentar Hacker News
  • Diskusi tentang perkembangan No-GIL CPython
  • Ada pendapat bahwa paralelisme eksplisit harus menjadi lebih penting dalam komputasi modern dan Python perlu beradaptasi dengan tren ini
  • Kekhawatiran bahwa jika GIL dihapus, balapan data dan operasi yang keliru dapat terjadi pada kode Python multithread
  • Pertanyaan tentang kelayakan penganalisis statis yang dapat mengidentifikasi potensi masalah dalam program Python yang sudah ada setelah GIL dihapus
  • Beberapa komentator membandingkan evolusi Python dengan OCaml dan penasaran apakah ada kesamaan antara kedua proyek tersebut
  • Perdebatan tentang fokus saat ini pada Python tanpa GIL, dengan sebagian berpendapat bahwa peningkatan performa single-thread lebih penting daripada multithreading yang sesungguhnya
  • Beberapa komentator mengusulkan untuk mempertahankan GIL tetapi memperkenalkan Workers mirip JavaScript, dengan setiap worker thread berupa VM terisolasi yang memiliki GIL-nya sendiri
  • Ada juga diskusi tentang transisi yang panjang dan sulit dari Python 2 ke Python 3, dan sebagian berpendapat bahwa komunitas Python bisa memanfaatkan kesempatan itu untuk membawa perubahan yang lebih besar pada internal interpreter
  • Ungkapan rasa ingin tahu tentang aplikasi dan layanan potensial yang bisa mendapat manfaat dari Python tanpa GIL, serta apa yang diharapkan para pengembang dari perkembangan ini