کتاب برنامه نویسی موازی با کودا
این کتاب در سال 1397 توسط آقایان علی اکبر اله دانه و پیام کیافر در 994 صفحه نگارش شده است و در انتشارات ناقوس به چاپ رسیده است. این کتاب شامل دوازده فصل و دو پیوست الف و ب می باشد. در هر فصل از این کتاب علاوه بر پرداختن به مفاهیم فصل مربوطه به منظور تفهیم مفاهیم هر فصل چندین مثال عملی نیز راجع به برنامه نویسی کوائی آن آورده شده است. در این کتاب برای برنامه نویسی برای محاسبات موازی با GPU از پلتفرم کودا سی و سی پلاس پلاس استفاده شده است.
استفاده از توان محاسباتی رایانهها در تحقیقات علمی و فعالیتهای دانشگاهی، مراکز تحقیقاتی و شرکتهای تجاری، کاربرد روزافزونی پیدا نموده است؛ ازاینرو نیاز به پردازش سریعتر افزایش یافته و به یک نیاز اساسی تبدیل شده است. سرعت کامپیوترهای شخصی کنونی نسبت به اجداد خود بهطور سرسامآوری افزایش یافته است اما علیرغم وجود این موضوع باز جوابگوی نیازهای مطرحشده نیست. ازجمله عرصههایی که احتیاج به کامپیوترهایی با سرعت پردازش بسیار بالا دارند میتوان به برنامههای شبیهسازی در تحقیقات هستهای، نانو فناوری محاسباتی، برنامههای پیشبینی وضعیت هوا، برنامههای فیلمسازی کامپیوتری، برنامههای ساخت انیمیشن حرفهای و بسیاری از زمینههای مختلف دیگر که همگی بهسرعت پردازش بسیار زیاد نیاز دارند تا در یک زمان مناسب به نتیجه برسند اشاره کرد. یک راهحل برای این معضل، استفاده از سوپرکامپیوترها است. درست است که سرعت پردازش سوپرکامپیوترها بسیار بالاتر از کامپیوترهای شخصی است اما استفاده از آنها در همه موارد مقرونبهصرفه نیست؛ ضمن آنکه این فناوری در انحصار بعضی از کشورهای توسعهیافته است و سایر کشورها از دسترسی به این تجهیزات استراتژیک محروم هستند. راهحل دیگر در دستیابی به سرعت پردازش بسیار بالا، استفاده از روش پردازش موازی است. به بیان ساده در این روش چند پردازنده (در اینجا منظور پردازندههای گرافیکی) معمولی با همکاری یکدیگر به اجرای یک برنامه میپردازند که طی این همکاری، برنامه با سرعت بالاتری اجرا میشود. به عبارت دیگر، پردازش یا محاسبهی موازی، شکلی از پردازش است که در آن دستورالعملهای بسیاری در یک زمان و به صورت همزمان انجام میشوند و بر اساس این اصل اجرا میشوند که مسائل بزرگ را اغلب میتوان به مسائل کوچکتر تقسیم نمود که سپس باهم و بهصورت موازی اجرا شوند. کودا در نوامبر 2006 توسط انویدیا معرفی گردید، کودا یک پلتفرم محاسبات موازی همهمنظوره و مدل برنامهنویسی است که رابطهای برنامهنویسی را در اختیار برنامهنویسان قرار میدهد و به طراحان نرمافزار اجازه میدهد تا از تواناییهای جیپییو (GPU سرواژه Graphics Processing Unit بوده و به معنای واحد پردازش گرافیکی است) در جهت محاسبات همهمنظوره روی واحد پردازش گرافیکی استفاده کنند. پلتفرم کودا یک لایه نرمافزاری است که دسترسی مستقیم به مجموعه دستورالعملهای مجازی جیپییو و عناصر محاسبات موازی را میدهد. این پلتفرم به گونهای طراحی شده است که با زبانهای برنامهنویسی سی، سیپلاسپلاس، فرترن و متلب کار میکند. این قابلیت دسترسی، کار را برای متخصصان برنامهنویسی موازی به منظور استفاده از منابع جیپییو به همان شکلی که از دایرکتایکس (DirectX) یا اپنجیال (OpenGL) استفاده میکنند، هموار کرده است. با استفاده از این معماری میتوان برنامه خود را به زبان سی یا سیپلاسپلاس نوشته و سپس بر روی پردازنده گرافیکی اجرا کرده و از سرعت آن لذت برد. ادامه مطلب ...
در شکل 1جلد کتاب ژن
خودخواه به نویسندگی ریچارد داکینز با سی امین سالگرد نگارش این کتاب نشان داده
شده است. این کتاب ویرایش دوم بوده و در سال 2006 در انتشارات Oxford
University Press به چاپ رسیده است.
کتاب شامل سیزده
فصل می باشد. در ادامه به توضیح مختصری راجع به هر فصل داده می شود.
ادامه مطلب ...
معرفی کتاب توسعه برنامه موازی GPU با استفاده از کودا
این کتاب با نام توسعه برنامه موازی GPU با استفاده از کودا می باشد که توسط Tolga Soyata نوشته شده است. این کتاب در سال 2018 توسط انتشارات Chapman and Hall/CRC منشر شده است. کتاب حاضر در 15 فصل در قالب 477 صفحه ارائه شده است. نویسنده این کتاب مباحث خود را در سه بخش: توضیحات در مورد اجرای برنامه با cpu و چند نخی ارائه می دهد و در قسمت دوم به اجرای برنامه ها در پلتفرم nvidia همراه با GPU را بیان کرده است و در قسمت آخر کتاب دید گسترده ای از مفاهیم GPU و کودا را به خواننده می دهد و به معرفی اجمالی از کتابخانه های کودا مانند cuBLAS, cuFFT, NPP, and Thrust می پردازد. تصویر جلد کتاب در شکل 1 قابل مشاهده می باشد.
شکل 1: تصویر جلد کتاب توسعه برنامه موازی GPU با استفاده از کودا