Tuyên bố kỷ nguyên tự do luồng—Quyết định của Python Steering Council
(discuss.python.org)Nhờ nỗ lực của Na Dong-hui, free-threading nay đã rời khỏi nhãn thử nghiệm và được hỗ trợ chính thức.
Python Steering Council (SC) đã phê duyệt PEP 779 để loại bỏ nhãn “experimental” khỏi bản dựng free-threaded của Python 3.14. Quyết định này được đưa ra với điều kiện phải đáp ứng các hạng mục sau trong Giai đoạn II.
-
Khả năng tương thích C API/ABI và thiết lập Stable C API
- Các thay đổi làm phá vỡ khả năng tương thích API/ABI hiện có phải được thống nhất trước với nhóm công tác C API
- Định nghĩa và cung cấp Stable C API dành riêng cho free-threading trước Python 3.15
-
Tiêu chuẩn cho các dự án thử nghiệm mới
- Các dự án thử nghiệm mới bên trong CPython phải tương thích với bản dựng free-threading và được phát triển trên nền tảng đó
- Giảm thiểu độ phức tạp do phải duy trì song song GIL và free-threading
-
Các ngưỡng bảo vệ về hiệu năng và bộ nhớ
- Mục tiêu: mức suy giảm hiệu năng trong phạm vi 10% so với bản dựng GIL
- Mức suy giảm tối đa 15% / tăng bộ nhớ 15% cần có thỏa thuận trước của SC (trần bộ nhớ là 20%)
-
Yêu cầu về tài liệu
- Người dùng Python: làm rõ các đảm bảo và thay đổi của API thư viện chuẩn
- Nhà phát triển Python·C API: tài liệu hóa các đảm bảo về đồng thời như tín hiệu và an toàn luồng
- Nhà phát triển CPython: tài liệu hóa các điểm cần cân nhắc khi triển khai
- Cung cấp một ‘trang đích free-threading’ chính thức tập hợp toàn bộ tài liệu
-
Chuẩn bị các primitive đồng thời ở mức cao
- Tập trung vào gói
concurrent, đề xuất và xem xét các công cụ đồng thời mức cao để người dùng có thể sử dụng mà không cần biết chi tiết triển khai bên trong
- Tập trung vào gói
-
Yêu cầu benchmark
- Xác minh các tuyên bố về hiệu năng, bộ nhớ và độ chính xác bằng các bài kiểm thử có thể lặp lại dựa trên
pyperformance - Khuyến khích đóng góp thêm benchmark phản ánh khối lượng công việc thực tế
- Xác minh các tuyên bố về hiệu năng, bộ nhớ và độ chính xác bằng các bài kiểm thử có thể lặp lại dựa trên
SC bày tỏ sự tin tưởng vào tiến độ của dự án và khuyến nghị cộng đồng Python tích cực quảng bá bản dựng free-threading như một tùy chọn được hỗ trợ chính thức. Nhãn “experimental” sẽ được chính thức gỡ bỏ trong 3.14 beta 3, còn việc có chuyển sang Giai đoạn III (biến free-threading thành bản dựng mặc định hoặc duy nhất) hay không sẽ được thảo luận sau.
3 bình luận
Tự do luồng muôn năm!
Tuyệt!
Wow...!