کتاب برنامه‌نویسی سیستم های توزیع شده با C و MPI

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 62,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

📚 محتوای این محصول آموزشی (پکیج کامل)

💡 این محصول یک نسخهٔ کامل و جامع است

تمامی محتوای آموزشی این کتاب در قالب یک بسته‌ی کامل و یکپارچه ارائه می‌شود و شامل تمام نسخه‌ها و فایل‌های موردنیاز برای یادگیری است.

🎁 محتویات کامل بسته دانلودی

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل کتاب‌ها، تمرین‌ها و خودآزمایی .


ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود و نسخهٔ چاپی ندارد.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های کتاب همانجا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

📚 کتاب آموزشی جامع

📚 اطلاعات کتاب

عنوان کتاب: کتاب برنامه‌نویسی سیستم های توزیع شده با C و MPI

موضوع کلی: برنامه نویسی

موضوع میانی: سی (C)

📋 سرفصل‌های کتاب (100 موضوع)

  • 1. مقدمه‌ای بر دوره و اهداف یادگیری
  • 2. چرا زبان C برای برنامه‌نویسی سیستم‌های توزیع شده؟
  • 3. مروری بر مفاهیم ضروری C: اشاره‌گرها و مدیریت حافظه
  • 4. مروری بر مفاهیم ضروری C: ساختارها (Structs) و آرایه‌ها
  • 5. کامپایل، لینک و ساخت پروژه‌های C با Makefile
  • 6. مقدمه‌ای بر سیستم‌عامل: فرآیندها (Processes) و ریسه‌ها (Threads)
  • 7. ارتباط بین فرآیندی (IPC) در یک سیستم: Pipe و Shared Memory
  • 8. مقدمه‌ای بر شبکه‌های کامپیوتری و مدل TCP/IP
  • 9. برنامه‌نویسی سوکت مقدماتی در C
  • 10. دیباگ کردن برنامه‌های C با GDB
  • 11. مقدمه‌ای بر رایانش موازی و توزیع شده
  • 12. معماری‌های رایانش موازی: حافظه مشترک در مقابل حافظه توزیع شده
  • 13. مدل برنامه‌نویسی پاس دادن پیام (Message Passing)
  • 14. معیارهای عملکرد: افزایش سرعت (Speedup) و کارایی (Efficiency)
  • 15. قانون امدال (Amdahl's Law) و قانون گوستافسون (Gustafson's Law)
  • 16. مقیاس‌پذیری قوی (Strong Scaling) و ضعیف (Weak Scaling)
  • 17. معرفی استاندارد MPI: تاریخچه و اهداف
  • 18. نصب و راه‌اندازی محیط توسعه MPI
  • 19. اولین برنامه MPI: سلام، دنیای موازی!
  • 20. اجرای برنامه‌های MPI با mpirun و mpiexec
  • 21. مفاهیم پایه: Communicator، Rank و Size
  • 22. مقداردهی اولیه و نهایی کردن محیط MPI: `MPI_Init` و `MPI_Finalize`
  • 23. ارتباط نقطه به نقطه (Point-to-Point): ارسال و دریافت پایه
  • 24. ارسال مسدودکننده (Blocking Send): `MPI_Send`
  • 25. دریافت مسدودکننده (Blocking Receive): `MPI_Recv`
  • 26. بن‌بست (Deadlock) در ارتباطات مسدودکننده و راه‌های جلوگیری از آن
  • 27. استفاده از تگ پیام (Message Tag) برای تمایز پیام‌ها
  • 28. بررسی وضعیت پیام دریافتی با ساختار `MPI_Status`
  • 29. کاوش برای پیام‌های ورودی: `MPI_Probe` و `MPI_Iprobe`
  • 30. ارتباطات غیرمسدودکننده (Non-blocking): `MPI_Isend` و `MPI_Irecv`
  • 31. تکمیل ارتباطات غیرمسدودکننده: `MPI_Wait` و `MPI_Test`
  • 32. انتظار برای چندین عملیات غیرمسدودکننده: `MPI_Waitall` و `MPI_Waitany`
  • 33. حالت‌های مختلف ارسال: استاندارد، بافری، همگام و آماده
  • 34. ارسال بافری (Buffered Send): `MPI_Bsend`
  • 35. ارسال همگام (Synchronous Send): `MPI_Ssend`
  • 36. عملیات ترکیبی ارسال و دریافت: `MPI_Sendrecv`
  • 37. اندازه‌گیری زمان در برنامه‌های موازی: `MPI_Wtime`
  • 38. مقدمه‌ای بر ارتباطات گروهی (Collective Communications)
  • 39. همگام‌سازی فرآیندها با `MPI_Barrier`
  • 40. پخش سراسری داده (Broadcast): `MPI_Bcast`
  • 41. پخش قطعه‌ای داده (Scatter): `MPI_Scatter`
  • 42. جمع‌آوری داده (Gather): `MPI_Gather`
  • 43. جمع‌آوری سراسری داده (All-gather): `MPI_Allgather`
  • 44. ارسال و دریافت از همه به همه: `MPI_Alltoall`
  • 45. عملیات کاهشی (Reduction): `MPI_Reduce`
  • 46. عملگرهای کاهشی از پیش تعریف شده (MPI_SUM, MPI_MAX, ...)
  • 47. عملیات کاهشی سراسری: `MPI_Allreduce`
  • 48. عملیات اسکن (پیشوند): `MPI_Scan`
  • 49. نسخه‌های برداری ارتباطات گروهی: `MPI_Gatherv`, `MPI_Scatterv`, `MPI_Allgatherv`
  • 50. انتخاب عملیات گروهی مناسب برای هر سناریو
  • 51. مقدمه‌ای بر انواع داده مشتق شده (Derived Datatypes)
  • 52. ایجاد نوع داده پیوسته (Contiguous)
  • 53. ایجاد نوع داده برداری (Vector)
  • 54. ایجاد نوع داده ایندکس شده (Indexed)
  • 55. ایجاد نوع داده ساختاری (Struct)
  • 56. ثبت نهایی نوع داده جدید: `MPI_Type_commit`
  • 57. مفهوم گروه‌ها (Groups) و Communicator های جدید
  • 58. ایجاد یک گروه از فرآیندها
  • 59. ایجاد Communicator جدید از یک گروه: `MPI_Comm_create`
  • 60. تقسیم یک Communicator به زیرگروه‌ها: `MPI_Comm_split`
  • 61. مقدمه‌ای بر توپولوژی‌های مجازی (Virtual Topologies)
  • 62. توپولوژی‌های دکارتی (Cartesian)
  • 63. ایجاد یک شبکه دکارتی: `MPI_Cart_create`
  • 64. به‌دست آوردن مختصات و همسایه‌ها در شبکه دکارتی
  • 65. توپولوژی‌های گرافی (Graph)
  • 66. مقدمه‌ای بر ارتباطات یک‌طرفه (One-Sided Communication / RMA)
  • 67. ایجاد پنجره حافظه (Memory Window): `MPI_Win_create`
  • 68. عملیات نوشتن از راه دور: `MPI_Put`
  • 69. عملیات خواندن از راه دور: `MPI_Get`
  • 70. عملیات تجمعی از راه دور: `MPI_Accumulate`
  • 71. همگام‌سازی در ارتباطات یک‌طرفه: Fences
  • 72. همگام‌سازی در ارتباطات یک‌طرفه: Locks
  • 73. چالش ورودی/خروجی موازی (Parallel I/O)
  • 74. مقدمه‌ای بر MPI-IO
  • 75. باز کردن و بستن فایل‌های موازی: `MPI_File_open`
  • 76. تنظیم نما و اشاره‌گر فایل: `MPI_File_set_view`
  • 77. عملیات خواندن و نوشتن گروهی در فایل‌ها
  • 78. عملیات خواندن و نوشتن غیرگروهی در فایل‌ها
  • 79. تحلیل عملکرد و ابزارهای پروفایلینگ (Profiling)
  • 80. شناسایی گلوگاه‌های ارتباطی در برنامه
  • 81. استراتژی‌های توازن بار (Load Balancing): ایستا و پویا
  • 82. هم‌پوشانی محاسبات و ارتباطات برای افزایش کارایی
  • 83. تأثیر تأخیر (Latency) و پهنای باند (Bandwidth) بر عملکرد
  • 84. الگوریتم‌های موازی: ضرب ماتریس در بردار
  • 85. الگوریتم‌های موازی: ضرب ماتریس در ماتریس (الگوریتم Cannon)
  • 86. الگوریتم‌های موازی: مرتب‌سازی (Odd-Even Sort)
  • 87. مطالعه موردی: حل معادلات دیفرانسیل با مشتقات جزئی (روش ژاکوبی)
  • 88. مطالعه موردی: شبیه‌سازی N-Body
  • 89. الگوهای طراحی موازی: استاد-کارگر (Master-Worker)
  • 90. الگوهای طراحی موازی: SPMD (Single Program, Multiple Data)
  • 91. مقدمه‌ای بر برنامه‌نویسی ترکیبی (Hybrid Programming)
  • 92. ترکیب MPI و OpenMP
  • 93. ملاحظات Thread Safety در MPI: `MPI_Init_thread`
  • 94. ترکیب MPI و Pthreads
  • 95. مدیریت خطا در MPI
  • 96. استفاده از ویژگی‌های مدرن C (C11/C17) در برنامه‌های MPI
  • 97. بهترین شیوه‌ها در کدنویسی MPI
  • 98. جمع‌بندی دوره و مرور مفاهیم کلیدی
  • 99. آینده استاندارد MPI و مسیرهای پیش رو
  • 100. راهنمای طراحی و پیاده‌سازی پروژه نهایی

📚 محتوای این محصول آموزشی (پکیج کامل)

💡 این محصول یک نسخهٔ کامل و جامع است

تمامی محتوای آموزشی این کتاب در قالب یک بسته‌ی کامل و یکپارچه ارائه می‌شود و شامل تمام نسخه‌ها و فایل‌های موردنیاز برای یادگیری است.

🎁 محتویات کامل بسته دانلودی

🎯 این بسته یک دورهٔ آموزشی کامل و چندلایه است؛ شامل کتاب‌ها، تمرین‌ها و خودآزمایی .


ℹ️ نکات مهم هنگام خرید

  • این محصول به صورت فایل دانلودی کامل ارائه می‌شود و نسخهٔ چاپی ندارد.
  • توجه: لینک‌های اختصاصی دوره طی حداکثر 24 ساعت پس از ثبت سفارش ارسال می‌شوند.
  • دقت کنید لینک ها به شماره موبایل شما ارسال می شوند. پس در ارائه شماره موبایل صحیح دقت کنید.
  • برای راهنمایی در مورد نحوه دانلود به شماره 09395106248 پیامک دهید یا تماس بگیرید. (ایده آل ترین گزینه ارسال پیام در یکی از پیام رسان ها به همین شماره است تا سریعا لینک های کتاب همانجا برای شما ارسال گردد.)
  • اگر پرداخت انجام شده ولی بعد از 24 ساعت هنوز لینک‌ها را دریافت نکرده‌اید، نام و نام خانوادگی و نام محصول را پیامک کنید تا لینک‌ها دوباره ارسال شوند.

💬 راه‌های ارتباطی پشتیبانی:
واتس‌اپ یا هر پیام رسان داخلی یا پیامک: 09395106248
تلگرام: @ma_limbs

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.