CUDA Programming Applications

کاربردهای برنامه نویسی کودا

CUDA Programming Applications

کاربردهای برنامه نویسی کودا

CUDA C Programming

کتاب CUDA C Programming توسط JOHN (RUNWEI) CHENG و  MAX GROSSMAN  و TY MCKERCHER در سال 2014 منتشر شد.این کتاب مقدمه ای خوب برای کسانی است که قصد در شروع برنامه نویسی موازی با پلتفرم کودا را دارند که به معرفی معماری و اجرای برنامه های کاربردی در حالت موازی پرداخته است، لذا از بازدیدکنندگان محترم تقاضا می شود برای درک مفهوم این کتاب فصول را به ترتیب خوانده و به اجرای مثالهای کتاب در محیط کودا بپردازند، این کتاب شامل ده فصل که در زیر به شرح مختصری ازآنها پرداخته شده است می باشد.



فصل اول به بررسی محاسبات موازی ناهمگن با پلتفرم CUDA شامل معرفی محاسبات موازی، برنامه نویسی موازی و معماری کامپیوتر و سپس به معرفی محاسبات ناهمگن شامل معماری و نمونه های ناهمگن  پرداخته است .سپس مثال ساده HelloWorld را به اجرا در آورده است.
فصل دوم به مدل برنامه نویسی با CUDA شامل ساختار برنامه نویسی با CUDA،مدیریت حافظه ، سازماندهی thread ها، راه اندازی کرنل کودا، نوشتن کرنل ،ارزیابی کرنل نوشته شده ،رفع خطاها ، کامپایل و اجرا و بررسی زمانبندی با CPU و GPU و سازماندهی thread های موازی ،شاخص گذاری ماتریسها با بلاکها و تردها،جمع ماتریسها با گریدها و بلاکهای دوبعدی و تک بعدی و همچنین با گریدهای دو بعدی و بلاکهای تک بعدی و مدیریت Device ها پرداخته است.
فصل سوم به مدل اجرا در CUDA شامل نگاه اجمالی به معماری GPUو FERMIو Kepler و درک ذات اجرای نخها ، بررسی موازی سازی ، باز کردن حلقه ها و موازی سازی پویا پرداخته است.
فصل چهارم به معرفی مدل حافظه CUDA ،مزایای سلسله مراتب حافظه ،مدیریت حافظه، تخصیص و آزادسازی حافظه ،الگوی دستیابی به حافظه ، خواندن و نوشتن سراسری در حافظه و پهنای باند در حافظه پرداخته است.
فصل پنجم به معرفی حافظه به اشتراک گذاشته شده در CUDA شامل تخصیص حافظه به اشتراک گذاشته شده ، تنظیمات مقدار حافظه اشتراکی ، همگام سازی ، بررسی آرایش داده در حافظه اشتراکی ، کاهش دسترسی به حافظه سراسری و ... می پردازد.
فصل ششم به معرفی رویدادها و Stram ها شامل CUDA Stream،زمانبندی Stream ، اولویت Stream، رویدادهای CUDA و همگام سازی Stream ها می پردازد.
فصل هفتم به معرفی دستورالعملهای CUDA شامل بهینه سازی برنامه های کاربردی ،توابع استاندارد ، تک دقتی در مقابل دقت مضاعف می پردازد.
فصل هشتم به معرفی برخی از کتابخانه های CUDA جهت دسترسی سریع به GPU می پردازد.
فصل نهم برنامه نویسی چند منظوره را با GPU و نحوه انتقال داده از CPU به GPU و بالعکس و همچنین از CPU به CPU و از GPU به GPU را شرح می دهد.
فصل دهم ملاحظاتی به اجرا و پیاده سازی برنامه در محیط CUDA دارد.
نظرات 0 + ارسال نظر
امکان ثبت نظر جدید برای این مطلب وجود ندارد.