دانلود پایان نامه، پایان نامه کارشناسی ارشد , مقاله، تحقیق، پاورپوینت در تمامی رشته ها

پیاده سازی چندنمونه از الگوریتم موازی با استفاده از کارت های گرافیکی چند هسته ای


پیاده سازی چندنمونه از الگوریتم موازی با استفاده از کارت های گرافیکی چند هسته ای

چکیده فارسی: در سال های اخیر، افزایش روز افزون عملکرد کارت های گرافیکی، محققین را به فکر بهره گیری از توان پردازشی آنها در کاربردهای غیر گرافیکی انداخته است. درهمین راستا شاخه جدیدی در علوم کامپیوتر به نام محاسبات با اهداف همه منظوره روی واحد GPU ایجاد شده است ، هدف فعالان این عرصه بهره گیری از کارت گرافیک به عنوان یک کمک پردازنده محاسباتی در برنامه های غیرگرافیکی و برنامه های عمومی است.ازاین رو از صنعت محاسباتی گرفته تا محاسبات موازی دچار تغییرات گسترده ای شده وعملیات انتقال تقریبا تمام كامپیوترهای مصرف کننده سال 2010 همراه با پردازنده های چند هسته ای صورت گرفته است صنعت رایانه ای در سراشیبى تند انقلاب محاسباتی موازی قرار دارد ،نتیجه اینکه در پی آن، تقریبا هر برنامه نویس مشتاق در آن نیاز به آموزش برنامه نویسی موازی دارد تا بتواند در علوم کامپیوتری به طور کامل موثر واقع شود. و در نتیجه CUDA C NVIDIA تا کنون به عنوان یکی از موفق ترین زبانهای عمل كرده است كه تا به حال برای محاسبات موازی طراحی شده است. در این پایان نامه، ضمن بیان مقدمه ای از CUDA، تعدادی از دستورات زبان NVIDIA CUDA C معرفی خواهد شد

مقدمه

واحد پردازش گرافیکی ابزاری اختصاصی برای رندر کردن گرافیکی در کامپیوترهای شخصی، ایستگاه‌های کاری و یا در کنسولهای بازی است. با توجه به معماری ان، این واحد امکان موازی سازی بیشتری را برای ما فراهم می کند و سرعت ان بسیار بیشتر از CPUاست. با توجه به توان پردازشی بالای انها در کاربردهای غیر گرافیکی شاخه جدیدی در علوم کامپیوتر به نام محاسبات با اهداف همه منظوره روی واحدGPU ایجاد شده است. هدف فعالان این عرصه بهره گیری از کارت گرافیک به عنوان یک کمک پردازنده محاسباتی در برنامه های غیرگرافیکی و برنامه های عمومی است. پردازنده های گرافیکی امروزی از چندین پردازنده با کارایی بالا تشکیل شده اند که قادر به محاسبات بسیار سنگین هستند.

همانطور که وارد حوزه محاسبات GPUمی شویم، برنامه های کاربردی ذاتا موازی به طور فزاینده ای از توانایی فراوان محاسبات موازی GPUبرای رسیدن به کارایی و بازدهی بالاتر استفاده می کنند. برنامه های کاربردی که قبلا به علت زمان بالای اجرای انها نامناسب بودند امروزه توسط محاسبات GPUقابل انجام هستند.

تکامل سریع GPUها از پراسسورهای گرافیکی پیکربندی شده تا پراسسورهای برنامه نویسی شده موازی باعث حضور انها در همه جا از جمله کامپیوترهای شخصی، لب تاپها و ایستگاههای کاری شد. انها فراگیرترین معماری پردازش موازی هستند و قیمت انها نیز مقرون به صرفه است. در واقع انها چند پردازندههای چند نخی چند هسته ای هستند که در برنامه های کاربردی محاسباتی و گرافیکی استفاده می شوند

 

تعداد صفحات 153 word

 

فهرست مطالب

 

فصل اول مقدمه. 1

1ـ مقدمه. 2

1-1- واحد پردازش گرافیکی.. 2

1-2- مقایسه توانایی های GPU با CPU.. 3

1-3- مقایسه سخت افزار GPU با CPU.. 7

1-4- فناوری های ATI و NVIDIA.. 8

فصل دوم محاسباتGPU.. 16

2-1 تکامل محاسبات GPU.. 17

2-2- توسعه فن اوری GPU.. 17

2-3-GPU های اولیه. 19

2-4- محاسبات یکپارچه و GPU ها 20

2-5- سیتم های محاسبات GPU.. 20

2-6- اکوسیستم محاسبات GPU.. 21

فصل سوم محاسبات multi-GPU.. 23

3-1- معماری محاسباتی تسلا.. 24

3-2- چند پردازندههای جریانی.. 24

3-3- حافظه های GPU.. 24

3-4- نمونه SIMT. 26

3-5- معماری مقیاس پذیر کودا 27

3-5-1- معماری دستگاه کودا 27

3-5-2- تردها، بلاک ها و گریدها: تطبیق الگوریتم ها با مدل کودا 28

3-5-3- کاربردهای کودا 33

3-5-4- معماری مجموعه دستور و اجرا نخ های موازی.. 41

3-5-5- معماری حافظه کودا 44

3-5-6- قابلیت محاسباتی.. 46

3-5-7- مدل برنامه نویسی کودا 47

3-5-8- یک مدل برنامه نویسی ناهمگن.. 49

3-5-9- پشته نرم افزاری کودا 52

3-5-10- سازمان نخ ها 53

3-5-11- CUDA C.. 55

3-5-12- کامپایل یک برنامه کودا 59

3-5-13- اشکال زدایی یک برنامه کودا 60

3-5-14- افزایش کارایی.. 61

3-6- نگاشت به معماری تسلا.. 62

3-7- پشتیبانی ممیز شناور. 63

3-8- سیستم های محاسباتی NVIDIA Tesla S1070. 63

3-9- معماری محاسبه فرمی.. 65

3-9-1- سلسله مراتب حافظه کش.... 67

3-9-2- حافظه ECC.. 67

3-9-3- چند پردازندههای جریانی.. 68

3-10- برنامه نویسی multi-GPU.. 69

فصل چهارم: شروع کار. 72

4ـ1ـ اهداف فصل.. 73

4ـ2ـمحیط توسعه. 73

4ـ2ـ1ـ پردازنده های گرافیکی فعال شده CUDA.. 74

4ـ2ـ2ـ دستگاه درایور NVIDIA.. 76

4ـ2ـ3ـ کیت ابزار توسعه CUDA.. 76

فصل پنجم معرفی CUDA C.. 81

5ـ معرفی CUDA C.. 82

5ـ1ـ اهداف فصل.. 82

5ـ2ـ اولین برنامه. 83

5ـ2ـ2ـ فرمان هسته ای.. 84

5ـ3 دستگاه های جستجوگر. 90

5_4 خواص کاربردی دستگاه. 95

فصل ششم برنامه نویسی موازی درCUDA C.. 98

6ـ1ـ اهداف این فصل.. 99

6ـ2 ـ برنامه نویسی CUDA موازی.. 99

فصل هفتم تعاون رشته ای.. 105

7ـ تعاون رشته ای.. 106

7ـ1ـ اهداف فصل.. 106

7ـ2ـ تقسیم بلوکهای موازی.. 106

7ـ2ـ1 مجموع برداری: ردوکس (REDUX) 107

7ـ3 حافظه اشتراکی و همزمانسازی.. 123

7ـ3ـ1 ضرب نقطه ای.. 125

7ـ3ـ2 بیت مپ حافظه مشترک... 138

نتیجه گیری.. 143

فهرست منابع.. 145

 

فهرست اشکال

شکل 1- 1 - مقایسه توان پردازشی خام پردازنده‌گرافیکی با پردازنده‌مرکزی.. 3

شکل1-2- مقایسه پهنای باند GPUو CPU.. 4

شکل 1- 3- نمودار مقایسه سرعت GPUها و CPUها در بدست اوردن پسورد فایل های RAR.. 7

شکل 1- 4- مقایسه سخت افزار GPUو CPU.. 8

شکل 1- 5- مدل تخصیص ترانزیستور برای GPUو CPU.. 8

شکل3- 1- معماری دستگاه کودا 28

شکل3-2- گریدها، بلاک ها و تردها 32

شکل3-3 - کامپایل JITو هدف گیری دستگاه یک برنامه کاربردی کودا 42

شکل3- 4- مثالی از توزیع بلاک ها روی GPUهای با اندازه متفاوت.. 43

شکل3- 6- فضاهای حافظه دستگاه کودا و مکان فیزکی انها روی دستگاه. 44

شکل3- 7- سلسله مراتب حافظه کودا در ارتباط با تردهای کرنل.. 45

شکل3- 8- پایپلاین گرافیکی.. 48

شکل3- 8- مثال اجرا ناهمگن.. 50

شکل3- 9- جریان کنترل پایه ای کودا 51

شکل3- 10- پشته نرم افزاری کودا 52

شکل3- 11- مدل اجرایی یک برنامه کودا با سازمان نخ.. 55

شکل3- 12- معماری سیستم محاسباتی NVIDIA Tesla S1070. 64

شکل3- 13- پیکربندی کامل محاسباتی S1070. 65

شکل3- 14- معماری محاسبات GPUبا 512 هسته پردازنده کودا 66

شکل3- 15- چند پردازندهای جریانی فرمی.. 69

شکل 3- 16- دو شیوه ممکن برای برنامه ای کردن.. 70

شکل4ـ1 پردازنده های گرافیکی فعال شده با CUDA.. 75

شکل 4ـ2صفحه دانلود CUDA.. 77

شکل6ـ1: جمع دوبردار. 100

شکل 7ـ1 ترتیب دو بعدی مجموعه ای از بلوک ها و رشته ها و رشته های صفر. 112

شکل 7ـ2 یک سلسله مراتب دو بعدی ازبلوک ها و رشته های مورد استفاده در پردازش یک تصویر48 * 32 پیکسلی با استفاده از یک رشته در هر پیکسل. 119

شکل 7ـ3 ثصویری از یک مثال موجGPU.. 123

شکل 7ـ4 یک مرحله از کاهش جمع.. 130

شکل 7ـ6 تصویر بعد از اضافه کردن همزمانسازی مناسب. 142

 

فهرست جداول

جدول2-1- نقطه عطف توسعه تکنولوژی GPUها NVIDIA.. 18

جدول5_3 خواص دستگاه با CUDA.. 92


مبلغ قابل پرداخت 6,000 تومان

توجه: پس از خرید فایل، لینک دانلود بصورت خودکار در اختیار شما قرار می گیرد و همچنین لینک دانلود به ایمیل شما ارسال می شود. درصورت وجود مشکل می توانید از بخش تماس با ما ی همین فروشگاه اطلاع رسانی نمایید.

Captcha
پشتیبانی خرید

برای مشاهده ضمانت خرید روی آن کلیک نمایید

تمام حقوق مادی و معنوی این وب سایت متعلق به "فروشگاه فایل سل" می باشد

فید خبر خوان    نقشه سایت    تماس با ما