دوره آموزشی راهنمای کامل برنامه‌نویسی موازی و هم‌زمان با سی پلاس پلاس

دوره آموزشی راهنمای کامل برنامه‌نویسی موازی و هم‌زمان با سی پلاس پلاس

4 ساعت 4 دقیقهمتوسط2025-01-24

مدرسین

Barron Stone

Barron Stone

Electrical Engineer

جزئیات دوره

برنامه‌نویسی موازی توانایی اجرای هم‌زمان دستورات متعدد را در یک برنامه فعال می‌کند، توان پردازش کلی را افزایش می‌دهد و کلید نوشتن برنامه‌های سریع‌تر و کارآمدتر است. در این دوره، به همراه مربیان Barron و Olivia Chiu Stone، با اصول برنامه‌نویسی موازی و هم‌زمان در C++ آشنا شوید و دانش پایه‌ای که برای نوشتن کدهای کارآمدتر و با عملکرد بهتر نیاز دارید را بدست آورید. Barron و Olivia مفاهیمی مانند نخ‌ریزی و استثنای متقابل را به شیوه‌ای سرگرم‌کننده و آموزنده توضیح می‌دهند و آن‌ها را به فعالیت‌های روزمره‌ای که در آشپزخانه انجام می‌دهید ربط می‌دهند. برای تثبیت این مفاهیم، آن‌ها را با استفاده از C++ به‌صورت عملی نمایش می‌دهند. هر درس کوتاه و عملی است که نظریه را با تکنیک‌های عملی تقویت می‌کند. در پایان این دوره، شما آماده خواهید بود تا تأثیرات عملکردی تکنیک‌های برنامه‌نویسی موازی و هم‌زمان را تجزیه و تحلیل کنید، معایب و مزایا را ارزیابی کنید و الگوهای برنامه‌نویسی مناسب را برای بهینه‌سازی خروجی و کارایی برنامه‌های C++ خود اعمال کنید.

اهداف یادگیری دوره
یادگیری اصول برنامه‌نویسی موازی و هم‌زمان در C++
آشنایی با مفاهیم نخ‌ریزی و استثنای متقابل
استفاده از تکنیک‌های عملی برای بهبود کارایی و سرعت برنامه‌ها
تجزیه و تحلیل تأثیرات عملکردی تکنیک‌های موازی و هم‌زمان
ارزیابی معایب و مزایای استفاده از برنامه‌نویسی موازی
اعمال الگوهای مناسب برای بهینه‌سازی برنامه‌های C++

مهارت ها

C++Programming FoundationsProgramming LanguagesOpen SourceSoftware DevelopmentOne-Off

سرفصل ها

مقدمه

  • اصول برنامه نویسی موازی را بیاموزید
  • آنچه باید بدانید
  • نصب کد Cygwin و Visual Studio

سخت‌افزار محاسباتی موازی

  • محاسبات ترتیبی در مقابل محاسبات موازی
  • معماری‌های محاسباتی موازی
  • حافظه مشترک در مقابل حافظه توزیع شده

موضوعات و فرآیندها

  • موضوع در مقابل فرآیند
  • موضوع در مقابل فرآیند - نسخه ی نمایشی C++
  • اجرای همزمان در مقابل اجرای موازی
  • زمانبندی اجرا
  • زمانبندی اجرا - دمو C++
  • چرخه عمر نخ
  • چرخه حیات نخ - نسخه ی نمایشی C++
  • نخ جدا شده
  • نخ جدا شده - دمو C++

طرد متقابل

  • مسابقه داده
  • مسابقه داده - دمو C++
  • طرد متقابل
  • محرومیت متقابل - نسخه ی نمایشی C++
  • اجسام اتمی - دمو C++

قفل

  • mutex بازگشتی
  • mutex بازگشتی - دمو C++
  • قفل را امتحان کنید
  • قفل - دمو C++ را امتحان کنید
  • موتکس مشترک
  • mutex اشتراکی - نسخه ی نمایشی C++

سرزندگی

  • بن بست
  • بن بست - دمو C++
  • قفل رها شده
  • قفل رها شده - دمو C++
  • گرسنگی
  • Starvation - دمو C++
  • Livelock
  • Livelock - نسخه ی نمایشی C++

همگام سازی

  • متغیر شرط
  • متغیر شرط - دمو C++
  • تولید کننده-مصرف کننده - دمو C++
  • سمافور
  • سمافور - دمو C++

موانع

  • شرایط مسابقه
  • شرایط مسابقه - دمو C++
  • مانع
  • مانع - نسخه ی نمایشی C++
  • لچ - دمو C++

وظایف ناهمزمان

  • نمودار محاسباتی
  • استخر نخ
  • Thread Pool - دمو C++
  • آینده
  • آینده - نسخه ی نمایشی C++
  • تفرقه بینداز و غلبه کن
  • Divide and Conquer - دمو C++

ارزیابی عملکرد موازی

  • سرعت، تأخیر و توان عملیاتی
  • قانون امدهل
  • سرعت را اندازه‌گیری کنید
  • اندازه‌گیری سرعت - نسخه ی نمایشی C++

طراحی برنامه‌های موازی

  • پارتیشن بندی
  • ارتباطات
  • تراکم
  • نقشه برداری

مشکلات چالش

  • به چالش‌ها خوش آمدید
  • چالش - ضرب ماتریسی
  • حل - ضرب ماتریسی
  • چالش - ادغام مرتب سازی
  • راه حل - مرتب سازی ادغام
  • چالش - دانلود تصاویر
  • راه حل - دانلود تصاویر

نتیجه گیری

  • مراحل بعدی
۱۰۰,۰۰۰ تومان