عاد مشروع Pyston، الذي يقدم لغة Python مع مترجم JIT، إلى نموذج التطوير المفتوح

قدم مطورو مشروع Pyston، الذي يقدم تنفيذًا عالي الأداء للغة Python باستخدام تقنيات تجميع JIT الحديثة، إصدارًا جديدًا من Pyston 2.2 وأعلنوا عن عودة المشروع إلى المصدر المفتوح. يهدف التنفيذ إلى تحقيق أداء عالٍ قريب من أداء لغات النظام التقليدية مثل C++. يتم نشر الكود الخاص بفرع Pyston 2 على GitHub بموجب ترخيص PSFL (Python Software Foundation License)، على غرار ترخيص CPython.

ولنتذكر أن مشروع Pyston كان يُشرف عليه سابقًا شركة Dropbox، التي توقفت عن تمويل التطوير في عام 2017. أسس مطورو Pyston شركتهم وأصدروا فرع Pyston 2 المعاد تصميمه بشكل كبير، والذي أُعلن أنه مستقر وجاهز للاستخدام على نطاق واسع. وفي الوقت نفسه، توقف المطورون عن نشر الكود المصدري وتحولوا إلى توفير التجميعات الثنائية فقط. والآن تقرر جعل Pyston مشروعًا مفتوح المصدر مرة أخرى، وتحويل الشركة إلى نموذج أعمال يتعلق بتطوير البرمجيات مفتوحة المصدر. علاوة على ذلك، يتم النظر في إمكانية نقل التحسينات من Pyston إلى CPython القياسي.

تجدر الإشارة إلى أن Pyston 2.2 أسرع بنسبة 30% من Python القياسية في اختبارات الأداء التي تقيم الأحمال الكامنة في تطبيقات خادم الويب. هناك أيضًا زيادة كبيرة في الأداء في Pyston 2.2 مقارنة بالإصدارات السابقة، والتي تم تحقيقها بشكل أساسي من خلال إضافة تحسينات لمناطق جديدة، بالإضافة إلى تحسينات في JIT وآليات التخزين المؤقت.

بالإضافة إلى تحسينات الأداء، يعد الإصدار الجديد مثيرًا للاهتمام أيضًا لأنه يحمل تغييرات من فرع CPython 3.8.8. فيما يتعلق بالتوافق مع لغة Python الأصلية، يُوصف مشروع Pyston بأنه التطبيق البديل الأكثر توافقًا مع CPython، نظرًا لأن Pyston عبارة عن شوكة من قاعدة بيانات CPython الرئيسية. يدعم Pyston جميع ميزات CPython، بما في ذلك واجهة برمجة تطبيقات C لتطوير الامتدادات بلغة C. من بين الاختلافات الرئيسية بين Pyston وCPython هو استخدام DynASM JIT والتخزين المؤقت المضمن والتحسينات العامة.

من بين التغييرات في Pyston 2.2، هناك أيضًا ذكر لتنظيف قاعدة التعليمات البرمجية من العديد من ميزات تصحيح الأخطاء في CPython، والتي تؤثر سلبًا على الأداء، ولكنها لا تكون مطلوبة تقريبًا بين المطورين. يتم تقديم الإحصائيات التي تفيد بأن إزالة أدوات تصحيح الأخطاء تؤدي إلى تسريع بنسبة 2٪، على الرغم من حقيقة أن حوالي 2٪ فقط من المطورين يستخدمون هذه الوظائف.

المصدر: opennet.ru

إضافة تعليق