عن المشروع
سكاليين هو مُحلِّل أداء عالي الدقة مُصمَّم للغة بايثون لتحديد الاختناقات الأدائية عبر استخدام وحدة المعالجة المركزية GPU وذاكرة الوصول العشوائي. وعلى عكس العديد من مُحللات الأداء الأخرى، يستخدم أخذ العينات للحفاظ على عبء تشغيلي منخفض (عادةً 10-20٪) ويقدّم تقارير مفصّلة على مستوى الأسطر البرمجية.
تشمل القدرات الرئيسية ما يلي:
- تحليل وحدة المعالجة المركزية: يميّز بين الوقت المُنفق في شيفرة بايثون، والشيفرة الأصلية (المكتبات)، والوقت النظامي (الإدخال والإخراج).
- تحليل الذاكرة: يتتبع نمو الذاكرة سطرًا بسطر، ويحدّد حالات تسرّب الذاكرة المحتملة، ويراقب حجم النسخ بين حدود بايثون والشيفرة الأصلية.
- تحليل وحدة معالجة الرسومات: يُبلغ عن وقت تشغيل وحدة معالجة الرسومات في الأنظمة القائمة على NVIDIA.
- تحليل العمليات غير المتزامنة: يُنسب وقت الانتظار الإجمالي إلى أسطر محددة ويتتبع عدد المراسم المتزامنة.
- تحسينات مدعومة بالذكاء الاصطناعي: يتكامل مع مزودي الذكاء الاصطناعي (OpenAI، Amazon Bedrock، Azure، وOllama) لاقتراح تحسينات برمجية استنادًا إلى عيوب الأداء المُحلَّلة.
- تصور متقدم: يقدم واجهة رسومية عبر الويب تشمل تراكب المكالمات، ومخططات اللهب المرجحة بالذاكرة، ومؤخرة زمنية تُظهر نشاط إدارة الذاكرة والتحكم فيه (GC)، والإدخال والإخراج، وقفل interpreter العام (GIL).
يدعم سكاليين طرق تكامل متعددة، بما في ذلك واجهة سطر الأوامر، وتمديد Visual Studio Code، وأوامر سحرية لمفاتيح Jupyter notebooks. كما يدعم نسخة بايثون متعددة الخيوط الحرة (3.13t / 3.14t).
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.