تیم هسته پایتون در اطلاعیه‌ای رسمی، معماری مجموعه دستورالعمل باز RISC-V را به عنوان یک پلتفرم Tier 3 در پیاده‌سازی مرجع CPython ثبت کرد. این تصمیم که در وبلاگ Python Insider توسط استن اولبریش منتشر شد، ثمرة ماه‌ها تلاش مشترک جامعه برای پایدار‌سازی و اعتبارسنجی کد بر روی سیلیکون واقعی است.

مسیر به سمت PEP 11: از تلاش جامعه تا استانداردسازی

شمول در PEP 11، سند رسمی پشتیبانی پلتفرم‌های پایتون، نیازمند کار گسترده‌ای بود. مشارکت‌کنندگان ماه‌ها تست‌ها را روی سخت‌افزار فیزیکی اجرا کردند، باگ‌های مخصوص معماری را برطرف ساختند، زیرساخت ساخت (build infrastructure) را تقویت کردند و ده‌ها پچ را مرور کردند. اولبریش به طور خاص از حمایت پروژه RISE Project نام برد که چندین ماشین RISC-V فیزیکی را به عنوان بیلد‌بات (buildbot) برای تست‌های خودکار و دیباگ مشکلات معماری فراهم آورده است.

چالش‌های فعلی و نقش RISE RISC-V Runners

هرچند تعیین سطح Tier 3 یک گام حیاتی است، توسعه قابل توجهی همچنان در جریان است. بیلد‌بات‌های فعلی تنها پس از ادغام پچ‌ها (post-merge) تست‌ها را اجرا می‌کنند که تاخیر در شناسایی نقص‌ها ایجاد می‌کند. برای حل این مسئله، تیم در حال همکاری با پروژه RISE از طریق ابتکار RISE RISC-V Runners است تا سخت‌افزار RISC-V مستقیماً در خط لوله یکپارچه‌سازی مداوم (CI) CPython ادغام شود و بازخورد پیشِ ادغام (pre-merge) سریع‌تری به توسعه‌دهندگان دهد.

نمودار مقایسه سطح‌های پشتیبانی پلتفرم در PEP 11
مقایسه سطح‌های پشتیبانی پلتفرم در PEP 11

افق به سمت Tier 2 و بهینه‌سازی‌های سخت‌افزاری

نگه‌داران برنامه دارند RISC-V را در افق زمانی متوسط به سمت Tier 2 در PEP 11 پیش ببرند. دستیابی به این سطح به معنی تضمین کامل عملکرد تست‌ها و جلوگیری از رگرسیون در انتشارهای رسمی است. موازی با این مسیر، بررسی بهینه‌سازی‌های مخصوص معماری در دستور کار قرار دارد، از جمله:

  • استفاده از توسعه‌های برداری (Vector Extensions - 'V' extension) برای پردازش موازی داده‌ها.
  • بهره‌گیری از دستورالعمل‌های دستکاری بیت (Bit Manipulation - 'B' extension).
  • پیاده‌سازی الگوریتم‌های بدون انشعاب (Branchless) برای کاهش جریمه‌های پیش‌بینی انشعاب در مفسر.

این بهینه‌سازی‌ها پتانسیل ارتقای چشمگیر عملکرد مفسر پایتون روی این پلتفرم را فراهم می‌آورند.

دعوت صریح به تست از سوی جامعه

برای اطمینان از پایداری در پیکربندی‌های متنوع، تیم توسعه درخواست کرده که توسعه‌دهندگانی که به بردهای RISC-V دسترسی دارند، CPython را بسازند، بارهای کاری (workloads) و مجموعه‌های تست خود را اجرا کنند و هرگونه خرابی را گزارش دهند. اولبریش تأکید کرد: «مهم است که افراد از آن استفاده کرده و بازخورد بدهند... لطفاً به ما بگویید چه چیزی خراب می‌شود.»

RISC-V: جایگزین باز برای اکوسیستم‌های مالکیتی

RISC-V یک معماری مجموعه دستورالعمل استاندارد باز است که جایگزینی برای همتایهای مالکیتی مانند x86 و ARM ارائه می‌دهد. برخلاف x86 که توسط موجودات تجاری موروثی کنترل می‌شود، یا ARM که تحت مجوزهای محدودکننده و کنترل شرکتی است، RISC-V به عنوان یک استاندارد باز توسعه یافته که هر کسی می‌تواند پیاده‌سازی کند. این باز بودن، قفل‌سازی فروشنده (vendor lock-in) را از بین می‌برد، موانع مجوز مالکیتی را حذف می‌کند و پایه‌ای قابل سفارشی‌سازی و بدون رويالتی (royalty-free) برای محاسبه مدرن فراهم می‌کند. پیش‌بینی‌های صنعتی نشان می‌دهد اکوسیستم RISC-V تا سال ۲۰۳۲ چهاربرابر خواهد شد.

واکنش جامعه فنی: سیگنال بلوغ برای ادغام CI/CD

بحث‌های در Hacker News و انجمن RISCV در Reddit این نقطه عطف را سیگنال بلوغ مهمی خواندند. توسعه‌دهندگان اشاره کردند که اگرچه Tier 3 به معنای تحمل شکست‌های گاه‌به‌گاه بدون مسدود کردن انتشارهای هسته است، اما پشتیبانی رسمی آپ‌استریم (upstream) یک مانع تاریخی بزرگ برای ادغام RISC-V در خط لوله‌های CI/CD نرم‌افزاری را برطرف کرده. گفتگوها همچنین بر پروفایل‌های سخت‌افزاری همچون RV64GC و استانداردهای آتی مانند RVA23 متمرکز بودند تا نحوه بهره‌گیری از قابلیت‌های مدرن هسته برای بهینه‌سازی مفسر پایتون را کاوش کنند.

اولبریش در پایان یادآوری کرد که CPython تنها یک لایه از اکوسیستم است؛ گسترش امکان‌پذیری کامل RISC-V به مشارکت‌های جاری در بسته‌های شخص ثالث، کامپایلرها، زنجیره ابزار و زیرساخت توسعه‌دهنده متکی است.