برنامه نویسی موازی با سی شارپ

با سلام. در این پست آموزشی دانلود کتاب آموزشی برنامه نویسی موازی با سی شارپ را به اشتراک گذاشته ایم. این کتاب آموزشی  به زبان فارسی  و شامل 106 صفحه می باشد که برنامه نویسی برنامه نویسی موازی با #C را بصورت مفید آموزش داده است. برنامه هایی که تاکنون توسط  DotNet Framework نوشته شده اند بیشتر آن ها فقط توسط یکی از هسته های پردازنده مورد پردازش قرار می گیرند. تاکنون جهت اجرای برنامه ها و وظایف (Tasks) به شکل موازی از ThreadPool و به طور کلی Multi-Thread Programming استفاده می شده است. ولی باید توجه داشت که با استفاده از این روش ها هنوز هم پردازش روی یکی از هسته ها انجام می شود و استفاده از ThreadPool به شکل کاملا درستی برنامه ها را به طور همزمان اجرا نمی کند.تاکنون اگر توسعه گران قصد داشتند اجرای برنامه را با استفاده از هسته های مختلف پردازنده انجام دهند، باید خود را درگیر کدهای سطح پایین و بسیار پیچیده ای می نمودند. اما خوشبختانه با معرفی کتابخانه Task Parallel Library در DotNet Framework 4.0 این عمل به ساده ترین شکل ممکن امکان پذیر شده است.

جهت دانلود کتاب آموزشی برنامه نویسی موازی با سی شارپ به ادامه مطلب مراجعه فرمایید

فهرست مطالب:

فهرست شکل ها

فهرست تکه کدها

فهرست لیست ها ( کدها کلی)

چکیده

مقدمه

1فصل اول

برنامه نویسی TASK-BEASE

مباحثی که در این فصل مطرح می شود:

1-1کار با پردازنده های چند هسته ای SHARED-MEMORY

1-1-1اختلاف پردازشگرهای چند هسته ای حافظه- مشترک با سیستم های حافظه- توزیع شده

1-1-2برنامه نویسی موازی و بنرامه نویسی چند هسته ای

1-2درک نخ های سخت افزاری و نخ های نرم افزاری

1-3-درک قانون AMDAHL

1-4-ملاحظه قانون GUSTAFSON

1-5کار با همزمانی سبک وزن

1-6ایجاد موفق طرح های TASK-BASED

1-6-1طراحی با همزمانی در ذهن

1-6-2درک اختلاف بین همزمانی تکه تکه ای ، همزمانی و موازی سازی

1-6-3-موازی سازی Tosk ها

1-6-4حداقل سازی نواحی بحرانی

1-6-5درک قوانین برنامه نویسی موازی برای چند پردازنده های هسته ای

1-7آماده کردن NUMA و مقایسه پذیری بالاتر

1-8تصمیم راحت موازی سازی

1-9خلاصه

2 فصل دوم

موازی سازی اجباری داده ها

2-1شروع TASK های موازی

2-1-1کلاس System.Threoding-Tasks-Parallel

2-1-2Parallel.lnvoke

2-3تبدیل کدهای ترتیبی به کدهای موازی

2-2-1تشخیص Hotspot قابل موازی سازی

2-2-2اندازه گیری موفق Speedup توسط اجرای موازی

2-3حلقه های موازی

2-3-1Parallel

2-3-2 Parallel.Foreoch

2-4تشخیص درجه موازی سازی مطلوب

2-4-1 ParallelOptions

2-4-2-شمارش نخ های سخت افزاری

2-4-3 هسته های منطقی هسته های فیزیکی نیستند

2-5 استفاده از نمودار گانت برای تشخیص نواحی بحرانی

2-6 خلاصه

نتیجه گیری و پیشنهادات

مراجع

 

فهرست لیست ها (کدها کلی):

لیست 1-1:اطلاعات نمایش داده شده بوسیله COREINFO نشخه 2برای یک پردازنده INTEL مدل 7I

لیست 1-2: اطلاعاتی بوسیله وسیله COREINFO نسخه 2 در دو گره NUMA با I7INTEL CORE

لیست 2-1: برنامه کنسول ساده ای است که مشکل ترتیب اجرا در همزمانی کد در PARALLFL.INVOKE را نشان می دهد.

لیست 2-2: نتایج اجرای کد موازی یکسانی که زمان های مختلفی برای اجرا نیاز دارد و در لیست 2-1 نشان داده شده است.

لیست 2-3: سری ساده ای از کلیدهای AES و لیست مولدهای MD5

لیست 2-5: مثالی از تولید خروجی توسط تولید کننده کلیدها و لیست های MD5 که بصورت موازی اجرا می شوند.

لیست 2-5: تابع اصلی AESKEYSGENERATEبا حلقه FORترتیبی و نسخه موازی خودش

لیست 2-6 :تابع اصلی GENERATEMD5HASHES با حلقه FOR ترتیبی و نسخه موازی اش.

لیست2-7-: نسخه موازی دیگری از حلقه ترتیبی اصلی با استفاده از FOREACH. PARALLEL با یک تقسیم کننده خصوصی

لیست 2-8: خروجی خطایابی PARALLELPARTITIONGENERATEAESKEYS با پردازشگر QUAD-CORE

لیست2-9: عیب یابی خروجی در نسخه بهینه PARALLELPARTITIONGENERATEAESKEYS با QUAD-CORE

لیست 2-10: عیب یابی خروجی در نسخه بهینه PARALLELPARTITIONGENERATEAESKEYS

لیست2-11: نسخه موازی از GENERATEMD5HASHES با استفاده از PARALLEL.FOREACH

لیست 2-12: نسخه جدیدی از تابع GENERATEMD5HASHESPARALLEL.FOREACHبا احتمال خروج از حلقه

لیست 2-13: رخ دادن و مدیریت استثناء با تابع GENERATEMD5HASHESPARALLEL.FOREACH

لیست 2-14: خروجی خطایابی با دو استثناء یافته شده در مجموعه INNEREXCEPTIONS

لیست 2-15: تخصیص حداکثر درجه مطلوب موازی سازی برای حلقه PARALLELFOR

به این مطلب امتیاز دهید post

راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.

پکیج حرفه ای فیلم های آموزشی برنامه نویسی به زبان فارسی
دانلود با لینک مستقیم

دسته بندی موضوعات

آخرین محصولات فروشگاه

مشاهده همه

نظرات

بازخوردهای خود را برای ما ارسال کنید

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.