Hội đồng điều hành Python yêu cầu tạm dừng phát triển trình biên dịch JIT

Công nghệ06 tháng 6, 2026·4 phút đọc

Hội đồng điều hành Python (Steering Council) yêu cầu tạm dừng phát triển tính năng mới cho trình biên dịch JIT thử nghiệm trong CPython. Một PEP chính thức phải được chấp nhận trong vòng sáu tháng để xác định tương lai của dự án, nếu không mã nguồn sẽ bị loại bỏ khỏi nhánh chính.

Hội đồng điều hành Python yêu cầu tạm dừng phát triển trình biên dịch JIT

Hội đồng điều hành Python (Steering Council) vừa đưa ra yêu cầu tạm dừng việc phát triển thêm tính năng mới cho dự án trình biên dịch JIT (Just-In-Time) thử nghiệm trong CPython. Quyết định này được đưa ra nhằm đảm bảo dự án tuân thủ quy trình phát triển chính thức trước khi trở thành một phần cốt lõi của ngôn ngữ lập trình này.

Trong vài năm qua, nhiều nhà phát triển cốt lõi đã nỗ lực xây dựng trình biên dịch JIT trên nhánh chính của CPython, mang lại những cải thiện hiệu suất đáng khích lệ. Tuy nhiên, do tính chất phức tạp và tầm ảnh hưởng lớn của nó, Hội đồng điều hành cho rằng đây là thời điểm thích hợp để đánh giá lại vị thế của JIT.

Yêu cầu về PEP chính thức

Hiện tại, JIT chỉ tồn tại dưới dạng thử nghiệm dựa trên PEP 744 mang tính chất thông tin (Informational). Hội đồng điều hành cho rằng một thay đổi lớn như vậy cần một PEP theo tiêu chuẩn chuẩn (Standards Track PEP). Đề xuất này phải làm rõ các cam kết dài hạn về bảo trì, đánh giá bảo mật, hỗ trợ công cụ gỡ lỗi và các nghĩa vụ đối với các nhà phân phối phần mềm.

Do đó, cho đến khi một PEP như vậy được chấp nhận, tất cả các phát triển mới về JIT trên nhánh chính sẽ bị tạm dừng. Điều này bao gồm các tính năng mới, tối ưu hóa và công việc cải thiện hiệu suất. Chỉ các bản sửa lỗi bảo mật và lỗi thông thường vẫn được phép tiếp tục.

Hạn sáu tháng và các phương án thay thế

Hội đồng điều hành đã thiết lập một khung thời gian sáu tháng để cộng đồng soạn thảo và thông qua một PEP. Nếu trong thời gian này không có PEP nào được chấp nhận, mã nguồn JIT hiện có sẽ phải bị loại bỏ khỏi nhánh chính của CPython và việc phát triển phải tiếp tục bên ngoài kho lưu trữ chính thức của Python.

Mặc dù ý định không phải là kêu gọi các đề xuất cạnh tranh, nhưng Hội đồng khuyến khích việc thảo luận về các kiến trúc thay thế. Thay vì gắn chặt với một chiến lược JIT duy nhất, PEP mới có thể mô tả một cơ sở hạ tầng JIT hỗ trợ nhiều chiến lược triển khai khác nhau, giúp việc thử nghiệm và đánh giá dễ dàng hơn.

Các điểm cần giải quyết trong PEP

Để được chấp nhận, PEP mới cần giải quyết ít nhất các vấn đề sau:

  • Kế hoạch bảo trì: Đảm bảo hệ thống con này có thể được duy trì lâu dài và không gây gánh nặng quá lớn cho những người bảo trì không trực tiếp làm việc trên JIT.
  • Tương thích: Cách JIT tương tác với các tính năng hiện có của CPython như free-threading, profiler và debugger.
  • Chỉ số thành công: Các mục tiêu hiệu suất cụ thể, độ phủ nền tảng và mức tiêu thụ bộ nhớ, cùng với các mốc thời gian.
  • Mối quan hệ với các JIT khác: Xác định liệu thiết kế này có tương thích với các trình biên dịch JIT bên thứ ba như CinderX, Numba hay PyTorch hay không.

Phản ứng từ cộng đồng

Quyết định này đã tạo ra nhiều thảo luận trong cộng đồng phát triển Python. Một số nhà phát triển lo ngại rằng việc ngừng phát triển hoàn toàn sẽ làm mất động lực và gây khó khăn cho các tình nguyện viên muốn đóng góp code. Tuy nhiên, Hội đồng điều hành cho rằng việc giữ cho JIT không thay đổi trong quá trình thảo luận là cần thiết để tập trung vào giá trị cốt lõi và các đánh đổi của dự án.

Một số gợi ý đã được đưa ra, chẳng hạn như tiếp tục phát triển trong một nhánh fork riêng trong thời gian chờ đợi PEP, giống như cách dự án free-threading (nogil) từng được duy trì trước đây. Diego Russo, một nhà phát triển chủ chốt, đã bày tỏ sẵn sàng điều phối việc viết PEP và thành lập một nhóm làm việc để thảo luận về tương lai của JIT trong Python.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗