
يساعدك هذا المقرر على الانتقال من استخدام GPU في جهاز واحد إلى بناء حلول قابلة للتوسع داخل بيئات مؤسسية تضم عدة وحدات CPU وGPU. ستتعلم مفاهيم إدارة سير العمل غير المتزامن وكيف تنسق بين نقل البيانات والتنفيذ عبر آليات الأحداث (Events) لتغليف عمليات النقل وإشارات التحكم. يوضح المقرر كيف يؤدي سوء جدولة النقل والحساب إلى اختناق الأداء، وكيف تستخدم أدوات CUDA لتقليل زمن الانتظار وتحسين استغلال العتاد. ستطبق ذلك عبر أمثلة عملية تشمل فرز البيانات على GPU ومعالجة الصور، حيث تتعلم بناء نوى معالجة (Kernels) تفاعلية وتوظيف المكتبات والخوارزميات المناسبة. كما يناقش المقرر اعتبارات قابلية التوسع: تقسيم العمل، إدارة الذاكرة، ومراقبة الأداء عند تغير حجم البيانات أو عدد الأجهزة. ستتعرف على الأنماط التي تجعل الحل قابلا للنقل بين بيئات مختلفة، وكيف تكتب كودا يحافظ على الصحة والدقة عند توازي التنفيذ. بنهاية المقرر ستكون قادرا على تطوير برمجيات تعمل في بيئات متعددة CPU/GPU، وبناء خطوط معالجة غير متزامنة تتعامل مع البيانات بكفاءة، وتطبيق CUDA لحل تحديات عملية مثل معالجة الصور والفرز على نطاق أكبر.
Chancellor Thomas Pascale
Computer Science