دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 1
نویسندگان: Tolga Soyata
سری: Chapman & Hall/CRC Computational Science
ISBN (شابک) : 9781498750752, 1498750753
ناشر: Chapman and Hall/CRC
سال نشر: 2018
تعداد صفحات: 477
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 4 مگابایت
در صورت تبدیل فایل کتاب GPU Parallel Program Development Using CUDA به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب توسعه برنامه موازی GPU با استفاده از CUDA نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
توسعه برنامه موازی GPU با استفاده از CUDA برنامه نویسی GPU را با نشان دادن تفاوت بین خانواده های مختلف GPU ها آموزش می دهد. این رویکرد خواننده را برای نسل بعدی و نسل های آینده پردازنده های گرافیکی آماده می کند. این کتاب به جای مفاهیمی که مختص پلتفرم هستند، بر مفاهیمی تاکید دارد که برای مدت طولانی مرتبط باقی خواهند ماند. در همان زمان، این کتاب همچنین توضیحات وابسته به پلتفرم را ارائه می دهد که به اندازه مفاهیم GPU عمومی ارزشمند هستند.
کتاب از سه بخش مجزا تشکیل شده است. آن را با توضیح موازی با استفاده از CPU multi-threading در بخش اول شروع میکند. چند برنامه ساده برای نشان دادن مفهوم تقسیم یک کار بزرگ به وظایف فرعی موازی متعدد و نگاشت آنها به رشتههای CPU استفاده میشود. چندین روش موازی سازی یک کار مورد تجزیه و تحلیل قرار می گیرد و جوانب مثبت و منفی آنها از نظر عملکرد هسته و حافظه مورد مطالعه قرار می گیرد.
بخش دوم کتاب، موازی سازی عظیم GPU را معرفی می کند. همان برنامه ها در چندین پلتفرم GPU انویدیا موازی می شوند و همان تجزیه و تحلیل عملکرد تکرار می شود. از آنجایی که ساختار هسته و حافظه CPU و GPU متفاوت است، نتایج به طرق جالبی متفاوت است. هدف نهایی این است که برنامه نویسان از همه ایده های خوب و همچنین ایده های بد آگاه شوند تا خوانندگان بتوانند ایده های خوب را اعمال کنند و از ایده های بد در برنامه های خود اجتناب کنند.
بخش سوم کتاب برای خوانندگانی که می خواهند افق های خود را گسترش دهند، اشاره گر ارائه می دهد. معرفی مختصری از کتابخانه های محبوب CUDA (مانند cuBLAS، cuFFT، NPP و Thrust)، زبان برنامه نویسی OpenCL، مروری بر برنامه نویسی GPU با استفاده از زبان های برنامه نویسی دیگر و کتابخانه های API (مانند Python، OpenCV، OpenGL و Apple's Swift and Metal،) و کتابخانه یادگیری عمیق cuDNN.
GPU Parallel Program Development using CUDA teaches GPU programming by showing the differences among different families of GPUs. This approach prepares the reader for the next generation and future generations of GPUs. The book emphasizes concepts that will remain relevant for a long time, rather than concepts that are platform-specific. At the same time, the book also provides platform-dependent explanations that are as valuable as generalized GPU concepts.
The book consists of three separate parts; it starts by explaining parallelism using CPU multi-threading in Part I. A few simple programs are used to demonstrate the concept of dividing a large task into multiple parallel sub-tasks and mapping them to CPU threads. Multiple ways of parallelizing the same task are analyzed and their pros/cons are studied in terms of both core and memory operation.
Part II of the book introduces GPU massive parallelism. The same programs are parallelized on multiple Nvidia GPU platforms and the same performance analysis is repeated. Because the core and memory structures of CPUs and GPUs are different, the results differ in interesting ways. The end goal is to make programmers aware of all the good ideas, as well as the bad ideas, so readers can apply the good ideas and avoid the bad ideas in their own programs.
Part III of the book provides pointer for readers who want to expand their horizons. It provides a brief introduction to popular CUDA libraries (such as cuBLAS, cuFFT, NPP, and Thrust),the OpenCL programming language, an overview of GPU programming using other programming languages and API libraries (such as Python, OpenCV, OpenGL, and Apple’s Swift and Metal,) and the deep learning library cuDNN.
Series Page......Page 3
Title Page......Page 6
Copyright......Page 7
Dedication......Page 8
Contents......Page 10
List of Figures......Page 20
List of Tables......Page 30
Preface......Page 34
About the Author......Page 36
Part I: Understanding CPU Parallelism......Page 38
1 Introduction to CPU Parallel Programming......Page 40
2 Developing Our First Parallel CPU Program......Page 64
3 Improving Our First Parallel CPU Program......Page 90
4 Understanding the Cores and Memory......Page 116
5 Thread Management and Synchronization......Page 144
Part II: GPU Programming Using CUDA......Page 172
6 Introduction to GPU Parallelism and CUDA......Page 174
7 CUDA Host/Device Programming Model......Page 222
8 Understanding GPU Hardware Architecture......Page 262
9 Understanding GPU Cores......Page 300
10 Understanding GPU Memory......Page 340
11 CUDA Streams......Page 382
Part III: More To Know......Page 418
12 CUDA Libraries......Page 420
13 Introduction to OpenCL......Page 434
14 Other GPU Programming Languages......Page 450
15 Deep Learning Using CUDA......Page 462
Bibliography......Page 472
Index......Page 476