عدّ الكلمات أسرع بـ 494 مرة باستخدام SIMD والعمليات المتعددة

2025-08-17

تُفصّل هذه المقالة رحلة الكاتب في تحسين برنامج عدّ الكلمات، محققًا تسريعًا ملحوظًا بلغ 494 ضعفًا. بدءًا من تنفيذ Python البسيط (89.6 ثانية)، حسّن الكاتب الأداء تدريجيًا باستخدام وحدة `re` في CPython (13.7 ثانية)، وحلقة قياسية في لغة C (1.205 ثانية)، وأخيرًا، تعليمات SIMD والعمليات المتعددة (181 ميلي ثانية). تم شرح كل خطوة تحسين، بما في ذلك استخدام امتدادات C، وحلقات C فعّالة، واستخدام وحدة المعالجة المركزية متعددة النواة. وعلى الرغم من أن العمليات المتعددة لم تُحقق مكاسب كما هو متوقع، إلا أن النسخة النهائية وصلت إلى سرعة معالجة مذهلة تبلغ 5.52 GiB/s. يدعو الكاتب القراء إلى اقتراح تحسينات إضافية.

اقرأ المزيد

Dumac: تحسينات كبيرة في أداء أداة استخدام القرص على macOS

2025-08-11

Dumac، أداة استخدام القرص على macOS أسرع من `du -sh`، تستخدم نظام المكالمات `getattrlistbulk` المحدد لنظام macOS. بعد دمج ملاحظات المجتمع، قام المؤلف بزيادة الأداء بنسبة 33٪ تقريبًا من خلال التحول من Tokio إلى Rayon لتحسين التوازي، وتحسين تقسيم مجموعة هاش inode. وقد أدى معالجة مشكلة تنازع inode من خلال استراتيجية تقسيم مُحسّنة إلى تحقيق مكاسب إضافية في السرعة.

اقرأ المزيد
التطوير

إنشاء نماذج أولية سريعة للألعاب باستخدام LÖVE

2024-12-31

يهدف مبرمج إلى إكمال لعبة كاملة في عام 2025، وقام بإنشاء نماذج أولية لألعاب الشطرنج وألعاب الورق باستخدام إطار عمل LÖVE2D بلغة Lua. سمحت واجهة برمجة التطبيقات البسيطة والفعالة في LÖVE بالتفاعلات المعقدة لواجهة المستخدم مع الحد الأدنى من الكود، والذي تم تسريعه أكثر بفضل توليد الكود بمساعدة LLM. وجد المؤلف أن LÖVE مثالي لإنشاء النماذج الأولية، خاصةً لواجهة المستخدم، لكنه لاحظ الحاجة إلى تحسينات في إعادة التحميل السريع وفصل المنطق للمشاريع الأكبر. الخطط هي استخدام LÖVE لتطوير نموذج أولي MVP أساسي للعبة.

اقرأ المزيد