کتاب برنامه‌نویسی پیشرفته موازی: تسلط بر معماری‌های هیبریدی (CPU + GPU) با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

برنامه‌نویسی پیشرفته موازی: تسلط بر معماری‌های هیبریدی (CPU + GPU) برنامه‌نویسی پیشرفته موازی: تسلط بر معماری‌های هیبریدی (CPU + GPU) آیا آماده‌اید تا پتانسیل واقعی محاسبات با کارایی بالا (HPC) را در ...

انتخاب پلن

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

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

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره برنامه‌نویسی پیشرفته موازی: تسلط بر معماری‌های هیبریدی (CPU + GPU)

موضوع کلی: محاسبات با کارایی بالا (High-Performance Computing)

موضوع میانی: برنامه‌نویسی موازی برای معماری‌های مدرن

📋 سرفصل‌های دوره

  • 1. مبانی محاسبات با کارایی بالا (HPC)
  • 2. معماری‌های موازی: مقدمه
  • 3. معماری‌های چند هسته‌ای و بسیاری هسته‌ای
  • 4. معماری‌های هیبریدی CPU+GPU
  • 5. مروری بر مدل‌های برنامه‌نویسی موازی
  • 6. مقدمه‌ای بر MPI (Message Passing Interface)
  • 7. نصب و پیکربندی محیط MPI
  • 8. برنامه‌نویسی MPI: توابع پایه (Send/Receive)
  • 9. ارتباطات نقطه‌به‌نقطه در MPI
  • 10. ارتباطات جمعی در MPI (Broadcast, Gather, Scatter)
  • 11. عملگرهای کاهشی در MPI (Reduce, Allreduce)
  • 12. مدیریت گروه‌ها و ارتباط دهنده‌ها در MPI
  • 13. مفهوم و کاربرد توپولوژی در MPI
  • 14. بهینه‌سازی ارتباطات MPI
  • 15. مقدمه‌ای بر OpenMP (Open Multi-Processing)
  • 16. مدیریت Threadها در OpenMP
  • 17. ساختارهای کنترلی موازی در OpenMP (Parallel For, Sections)
  • 18. متغیرهای Private و Shared در OpenMP
  • 19. هماهنگ‌سازی Threadها در OpenMP (Locks, Barriers)
  • 20. استراتژی‌های زمان‌بندی حلقه در OpenMP (Scheduling)
  • 21. بهینه‌سازی OpenMP: کاهش سربار
  • 22. مقدمه‌ای بر CUDA (Compute Unified Device Architecture)
  • 23. معماری GPU: هسته‌ها و بلاک‌ها
  • 24. انتقال داده بین CPU و GPU
  • 25. نوشتن Kernelهای CUDA
  • 26. مدیریت Thread و Block در CUDA
  • 27. حافظه در CUDA: Global, Shared, Constant, Texture
  • 28. همگام‌سازی Threadها در CUDA
  • 29. بهینه‌سازی CUDA: ادغام حافظه
  • 30. بهینه‌سازی CUDA: پوشش تاخیر
  • 31. بهینه‌سازی CUDA: استفاده از Shared Memory
  • 32. بهینه‌سازی CUDA: استفاده از Constant Memory
  • 33. بهینه‌سازی CUDA: استفاده از Texture Memory
  • 34. پروفایل‌گیری و دیباگ CUDA
  • 35. ترکیب MPI و OpenMP: برنامه‌نویسی هیبریدی
  • 36. برنامه‌نویسی هیبریدی: توزیع وظایف بین گره‌ها و هسته‌ها
  • 37. برنامه‌نویسی هیبریدی: بهینه‌سازی ارتباطات
  • 38. برنامه‌نویسی هیبریدی: مدیریت داده
  • 39. ترکیب MPI و CUDA: محاسبات GPU توزیع شده
  • 40. نصب و پیکربندی محیط MPI برای CUDA
  • 41. ارسال و دریافت داده بین گره‌ها با GPU
  • 42. برنامه‌نویسی هیبریدی MPI+CUDA: کاربردها
  • 43. مقدمه‌ای بر OpenACC (Open Accelerators)
  • 44. کامپایلرها و Directiveهای OpenACC
  • 45. ساده‌سازی برنامه‌نویسی GPU با OpenACC
  • 46. انتقال داده خودکار در OpenACC
  • 47. بهینه‌سازی OpenACC
  • 48. مقدمه‌ای بر Chapel
  • 49. مقدمه‌ای بر Julia
  • 50. الگوریتم‌های مرتب‌سازی موازی (Parallel Sorting)
  • 51. الگوریتم‌های جستجوی موازی (Parallel Searching)
  • 52. ضرب ماتریس موازی (Parallel Matrix Multiplication)
  • 53. حل معادلات دیفرانسیل جزئی موازی (Parallel PDE Solvers)
  • 54. شبیه‌سازی مونت‌کارلو موازی (Parallel Monte Carlo Simulation)
  • 55. پردازش تصویر موازی (Parallel Image Processing)
  • 56. پردازش ویدئو موازی (Parallel Video Processing)
  • 57. تحلیل داده‌های بزرگ موازی (Parallel Big Data Analytics)
  • 58. یادگیری ماشین موازی (Parallel Machine Learning)
  • 59. شبکه‌های عصبی عمیق موازی (Parallel Deep Neural Networks)
  • 60. استفاده از کتابخانه‌های بهینه‌سازی شده (BLAS, LAPACK)
  • 61. ابزارهای پروفایل‌گیری و تحلیل عملکرد (Performance Analysis Tools)
  • 62. مقایسه کارایی معماری‌های CPU و GPU
  • 63. بهینه‌سازی مصرف انرژی در HPC
  • 64. مدیریت منابع در HPC
  • 65. زمان‌بندی کارها در HPC
  • 66. سیستم‌های فایل موازی (Parallel File Systems)
  • 67. مفاهیم حافظه Cache
  • 68. بهینه‌سازی استفاده از Cache
  • 69. تکنیک‌های Vectorization
  • 70. برنامه‌نویسی SIMD
  • 71. استفاده از Intel AVX
  • 72. برنامه‌نویسی GPU با OpenCL
  • 73. مقایسه CUDA و OpenCL
  • 74. مدیریت خطا در برنامه‌های موازی
  • 75. دیباگ برنامه‌های موازی
  • 76. مقدمه‌ای بر Fault Tolerance در HPC
  • 77. طراحی الگوریتم‌های تحمل‌پذیر خطا
  • 78. معماری‌های جدید HPC (Neuromorphic Computing, Quantum Computing)
  • 79. برنامه‌نویسی برای معماری‌های Neuromorphic
  • 80. مقدمه‌ای بر محاسبات کوانتومی
  • 81. کاربردهای محاسبات کوانتومی در HPC
  • 82. مقدمه‌ای بر Data Locality
  • 83. بهینه‌سازی Data Layout
  • 84. بهینه‌سازی Memory Access Patterns
  • 85. مقدمه‌ای بر Communication Avoiding Algorithms
  • 86. الگوریتم‌های Distributed Memory
  • 87. مقدمه‌ای بر Shared Memory Programming Models
  • 88. بهینه‌سازی Shared Memory Access
  • 89. تکنیک‌های Asynchronous Programming
  • 90. استفاده از Streams در CUDA
  • 91. استفاده از Futures و Promises
  • 92. مقدمه‌ای بر Domain Decomposition
  • 93. تکنیک‌های Load Balancing
  • 94. مقدمه‌ای بر Scaling
  • 95. Strong Scaling vs. Weak Scaling
  • 96. قانون امداهل (Amdahl's Law)
  • 97. قانون گوستافسون (Gustafson's Law)
  • 98. مدیریت وابستگی‌ها در برنامه‌های موازی
  • 99. استفاده از ابزارهای مدیریت وابستگی
  • 100. مقدمه‌ای بر Task-Based Parallelism
تگ‌ها: CPU CUDA GPU HPC Hybrid Architectures Manycore Multi-core OpenCL Parallel programming performance optimization Programming for Hybrid Multi/Manycore MPP Systems برنامه نویسی موازی بهینه سازی کد محاسبات با کارایی بالا معماری هیبریدی

نظرات

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

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