کتاب Parallel and High Performance Computing یا محاسبات موازی و با کارایی بالا یک کتاب تخصصی در زمینهی محاسبات موازی است که به صورت ریشهای و کاربردی به این مبحث مهم علوم رایانه میپردازد. از الگوریتمها و تئوریهای رایانش موازی تا پیادهسازی آن توسط زبانهای برنامهنویسی معروف، همه و همه در این کتاب تشریح داده شده است.
در ادامه مقدمهای از کتاب Parallel and High Performance Computing را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Parallel and High Performance Computing:
نحوه سازماندهی این کتاب: نقشه راه
کتاب Parallel and High Performance Computing انتظار ندارد که شما دانشی از برنامهنویسی موازی داشته باشید. انتظار میرود که خوانندگان برنامهنویسان ماهری، ترجیحاً در یک زبان محاسباتی کامپایل شده با کارایی بالا مانند ++C ،C یا Fortran باشند. همچنین انتظار میرود که خوانندگان اطلاعاتی در مورد اصطلاحات محاسباتی، مبانی سیستم عامل و شبکه داشته باشند. خوانندگان همچنین باید بتوانند راه خود را در اطراف رایانه خود بیابند، از جمله نصب نرمافزار و وظایف مدیریت سیستم سبک. دانش سختافزار محاسباتی شاید مهمترین نیاز خوانندگان باشد.
ما کتاب Parallel and High Performance Computing را به چهار بخش تقسیم کردهایم که دنیای محاسبات با کارایی بالا را شامل میشود. اینها هستند
■ قسمت 1: مقدمهای بر محاسبات موازی (فصل 1-5)
■ بخش 2: فناوریهای واحد پردازش مرکزی (CPU) (فصل 6-8)
■ بخش 3: فناوریهای واحد پردازش گرافیکی (GPU) (فصل 9-13)
■ قسمت 4: اکوسیستمهای محاسباتی با کارایی بالا (HPC) (فصل 14-17)
ترتیب موضوعات به سمت شخصی است که به یک پروژه محاسباتی با عملکرد بالا رسیدگی میکند. به عنوان مثال، برای یک پروژه کاربردی، مباحث مهندسی نرمافزار در فصل 2 قبل از شروع یک پروژه ضروری است.
هنگامی که مهندسی نرمافزار در جای خود قرار گرفت، تصمیمات بعدی ساختار دادهها و الگوریتمها هستند. سپس پیادهسازی برای CPU و GPU میآید. در نهایت، برنامه برای سیستم فایل موازی و سایر ویژگیهای منحصر به فرد یک سیستم محاسباتی با کارایی بالا سازگار شده است. از سوی دیگر، برخی از خوانندگان ما بیشتر علاقهمند به کسب مهارتهای اساسی در برنامهنویسی موازی هستند و ممکن است بخواهند مستقیماً به فصلهای MPI یا OpenMP بروند. اما در اینجا متوقف نشوید.
امروزه، محاسبات موازی بسیار بیشتر است. از پردازندههای گرافیکی که میتوانند برنامه شما را سرعت بخشند تا ابزارهایی که میتوانند کیفیت کد شما را بهبود بخشند یا به بخشهایی از کد برای بهینهسازی اشاره میکنند – دستاوردهای بالقوه فقط توسط زمان و تخصص شما محدود میشود.
اگر از این کتاب برای کلاس محاسبات موازی استفاده میکنید، دامنه مطالب حداقل برای دو ترم کافی است. ممکن است کتاب Parallel and High Performance Computing را بهعنوان یک کلیاتی از مطالبی در نظر بگیرید که میتواند برای مخاطبان شخصیسازی شود. با انتخاب موضوعات برای پوشش، میتوانید آن را برای اهداف دوره خود سفارشی کنید. در اینجا یک توالی احتمالی از مواد وجود دارد:
■ فصل 1 مقدمهای بر محاسبات موازی ارائه میکند.
■ فصل 3 به سنجش عملکرد سختافزار و برنامه میپردازد.
■ بخشهای 4.1-4.2 مفهوم طراحی دادهمحور برنامهنویسی، آرایههای چند بعدی و مبانی حافظه پنهان را توضیح میدهند.
■ فصل 7 OpenMP (Open Multi-Processing) را برای به دست آوردن موازی گره در گره پوشش میدهد.
■ فصل 8 MPI (رابط عبور پیام) را پوشش میدهد تا موازیسازی توزیع شده در چندین گره را بدست آورد.
■ بخشهای 14.1-14.5 مفاهیم پیوند و قرار دادن فرآیند را معرفی میکند.
■ فصلهای 9 و 10 سخت افزار و مدلهای برنامهنویسی GPU را توضیح میدهند.
■ بخشهای 11.1-11.2 کتاب Parallel and High Performance Computing، بر روی OpenACC تمرکز دارند تا برنامهها روی GPU اجرا شوند. یا میتوانید موضوعی را حذف کنید تا بتوانید زمان بیشتری را برای موضوعات باقیمانده صرف کنید. هنوز فصلهای دیگری وجود دارد که دانشآموزان را وسوسه میکند تا خودشان به کاوش در دنیای محاسبات موازی ادامه دهند.
همچنین شما میتوانید برای مطالعه بر روی اصول طراحی الگوریتم از کتاب Dive into Algorithms نیز استفاده نمائید.
سرفصلهای کتاب Parallel and High Performance Computing:
- Part 1 Introduction To Parallel Computing
- 1 Why Parallel Computing?
- 2 Planning For Parallelization
- 3 Performance Limits And Profiling
- 4 Data Design And Performance Models
- 5 Parallel Algorithms And Patterns
- Part 2 CPU: The Parallel Workhorse
- 6 Vectorization: Flops For Free
- 7 OpenMP That Performs
- 8 MPI: The Parallel Backbone
- Part 3 GPUs: Built To Accelerate
- 9 GPU Architectures And Concepts
- 10 GPU Programming Model
- 11 Directive-based GPU Programming
- 12 GPU Languages: Getting Down To Basics
- 13 GPU Profiling And Tools
- Part 4 High Performance Computing Ecosystems
- 14 Affinity: Truce With The Kernel
- 15 Batch Schedulers: Bringing Order To Chaos
- 16 File Operations For A Parallel World
- 17 Tools And Resources For Better Code
- appendix A References
- appendix B Solutions To Exercises
- appendix C Glossary
- index
فایل کتاب Parallel and High Performance Computing را میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.