کامپیوتر و IT و اینترنتعلوم مهندسی

سیستم های چندین پردازنده ای

صفحه 1:
فصل اول سیستم های چندین پردازنده ای ۱. سیستم های چندپردازنده ای ۲ سیستم های چند کامپیوتری ۳ سیستم های توزیع شده

صفحه 2:
سیستم های چندین پردازنده ای Local 5 memory Complete system ‏ع‎ ۲ ۸ 0 1 2 6 6 6| fel (el fe esha] fof] ‏لت‎ ‎2 Tt HSH Holm Cl Inter- Shared ۱ ed mals} connect] tong internet 6 TI 6[ ‏ها ۵) ه]‎ ۶ 0 [ej 0 0 0 0 0 ۳ 7 5 (b) 0 وك و اب پردازند های را نشان می دهد که به آن مدل ‏ حافظه ی اكى نيز می گویند. * شکل(ه) سیستم چند کامپیوتری را نشان می دهد که به آن مدل تبادل پیام نيز گفته می شود. = شکل( ») سیستم توزیع شده در یک شبکه گسترده را نشان می دهد.

صفحه 3:
سیستم چند پردازنده ای تعریف: سیستم چند پردازند » ای یک کامپیوتری است که از دو یا چند پردازنده ‎ep PU‏ شکل گرفته و آنها دسترسی کامل به حافظه ی اشتراکی ]1۷/]دارند.

صفحه 4:
Shared memory سخت افزار سیستم چندپردازنده ای Private memory ‏لح‎ ‎Shared memory CPU M CPU CPU M CPU ‏لسر لا‎ Cache Bus چند پردازنده ای مبتنی بر باس CPU

صفحه 5:
سخت افزار سیستم چندپردازنده ای Memories al fal lel lel [gl fel lel le Crosspoint 81 18) 5] ‏ادا‎ ۶۱ 2۴ switch is open 000 ‏کت مس‎ 2 7 oo +e on ۵ 8 Crosspoint = Loo switch is closed & ‏سر سس(‎ 101 ‏که‎ 4 16 a 11 ۳ 54 0 ‏منت دما‎ 5 switch ‏هت‎ ‎(a) چند پردازنده ای با دسترسی یکنواخت(171۷1) به کمک سوئیچ ‎Crossbar‏

صفحه 6:
سخت افزار سیستم چندپردازنده ای * چندپردازنده ای با دسترسی یکنواخت(/]1[[۷) با استفاده از شبکه های راهگزینی چند طبقه ای را به کمک با سوئیچ های ۲*۲ می سازند. شکل( ه) یک سوئیچ ۲۲۲ و شکل( ظ) فرمت پیام های ارسالی در این سیستم را نشان می دهد. A x Module | Address | Opcode B ۷۲ ‏لا‎ tee | (a) (b)

صفحه 7:
سخت افزار سیستم چندپردازنده ای 3 Stages ‏ب يمو‎ ۲ CPUs Memories 00 1A 2۸ 3۸ 9 001 b b ۳ 001 910 910 18 28 38 911 on 100 5 100 16 20 30 101 101 110 a a 110 18 20 30 111 z ۳ 111 * شبکه راهگزینی امگا

صفحه 8:
سخت افزار سیستم چندپردازنده ای مشخصات سیستم های جندپردازندای با دسترسی ‎(NUMA) cs 1 5:5 5‏ ۱. فقط یک فضای آدرس برای تمامی پردازند ها وجود دارد. ۲ دسترسی به حافظه راه دور فقط توسط فرمان های (۵۸)ی1 و 5101 انجام مى كيرد. ۳ دسترسی به حافظه راه دور كندتر از حافظه ى محلى است.

صفحه 9:
سخت افزار سیستم چندپردازنده ای ‎Node Node 288‏ ‎CPU Memory CPU Memory CPU Memory‏ ‎Directory [‏ 5 ص Local bus Tocal bus Tocal Bus Interconnection network (a) 284 Bits 8 18 8 Node Block Offset] (b) شکل( «) نمونه ای از سخت )5135 ‎NUMA.‏ با ۲۵۲ گره شکل( ‎(b‏ فلیدهای آدرس حافظه ی ۳۲ بیتی شکل(۰) مشخصات دارکتوری در گره ۳۳ ام اه م دراه

صفحه 10:
انواع سیستم های عامل چندپردازنده ای 681 ‏2نامع‎ 803 cPU4 Memory 0 Has Has Has Has Lua Data private private private private 3] 4 os os os 65 ‏لت‎ ‎- ‎Bus هر پردازنده [۳1) به طور مجزا سیستم عامل مربوط به خود را دارد

صفحه 11:
انواع سیستم های عامل چندپردازنده ای 6۴ 4 Memory ‏هنا‎ Slave runs user processes| 3نامع Slave runs user processes| Bus 2نامع Slave runs user processes| 1نامع Master runs os | a | (Master Slave)oo» Gly! ‏جنديردازنده اى‎

صفحه 12:
انواع سیستم های عامل چندپردازنده ای vo Locks Memory CPU 4 Runs: users and shared OS| CPU3 Runs users and shared OS| \ Bus CPU 2 Runs users and) shared OS} چندپردازنده ای متقارن ‎(SMP)‏ CPU 1 Runs users and shared OS}

صفحه 13:
همزمانی سیستم های چندپردازنده ای متقارن Word 1000 is initially 0 CPU1 Memory ‏2نامع‎ 1. CPU 1 reads a0 2. CPU 2 reads a0 3.CPU 1 writes a1 4. CPU 2writes a1 4 us دستورالعمل اتمیک م39 روی چندپردازنده ای درست عمل نمی کند. لذا برای عملکرد درست بايد این دستور در یک سیکل اجرا شود یا با اجرای آن باس را بتواند قفل کند.

صفحه 14:
همزمانی سیستم های چندپردازنده ای متقارن ‎spins on this (private) lock‏ 3 بت ‎spins on this (private) lock‏ 4 تم ‎ ‎a ‎ ‎ ‎[> When CPU 1 is finished with the real lock, it releases it and also ‎releases the private lock CPU 2 is spinning on ‎ ‎ ‎ ‎1 ‏اج و نامه ‎ ‎CPU 2 spins on this (private) lock ‎ ‎ ‎Shared memory ——— ‏1 لامع ‎holds 7‏ ‎real lock‏ ‎ ‏جهت جلوگیری از پدیده ‎thrashing‏ 025 می توانیم از چند 10016 برای کنترل ناحیه ی بحرانی استفاده کنیم ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎ ‎

صفحه 15:
روش های زمانبندی چندپردازنده ای * زمانبندی پروسس های مستقل * اشتراک زمانی ‎LPT +‏ ‎RLPT °‏ ۶ زمانبندی 07630 ها * اشتراك مكانى ‎Gang °‏ * زمانبندی پروسس های وابسته * الگوریتم های که به کمک گراف وظایف زمانبدی را انجام می دهند

صفحه 16:
٩[ 01 21 ]3 ‏لم الك اك‎ 6 9[ ]1[ ]2[ ]3 4[ ‏نامعر ليإ لقا [ق]‎ A] I cue ABBE 8] [9] [ro] [1 cPU4 8] [9] [ro] [14 goes idle 8] [9] fro] [14 goes idle ۳ 2 ]۱3[ 14 5 2[ ]13[ [ra] 5 81 ]13[ 14 5 eae Priority Priority (a) 0 * دقت کنید که در این زمانبندی از یک ساختمان داده همانند صف ساده يا اولويت دار استفاده می کند.

صفحه 17:
* اولویت زمانبندی در الگوریتم ‎LPT‏ ‎(Longest Processing Time)‏ طولانی ترین زعان اجزایی پرزیسی ها است بابراین زپروسبی.-ها زایپ طبق زمان اجرایی آن ها به صورت نزولی موتب نموده و به ترتیب پردازنده های خالی به آنها احتصاص داده می شود. * قعانتنی ‎PT‏ اتحصازی مباشت.

صفحه 18:
زمانبندی پروسس های مستقل: ‎Le‏ بر 3 ب 7ب 14 ی وا و 0 زر 8 ,)12 ‎ET={‏ ‏2 11 12 13 4 15 16 7 18 ظيفه (13516) را با الگوریتم 1 طن انجام داده وبا ‎Gantt sry‏ رسم زا یت به نک پردازنده ای بست آورید

صفحه 19:
زمانبندی پروسس های مستقل: ‎RLPT‏ © اولویت زمانبندی در الگوریتم ‎LPT (Reverse‏ ‎LPT)‏ طولانی زمان اجرایی پروسس ها است: ؟ اولویت این الگوریتم ‎cel LPT Se‏ * زمابندی 31,۳1 نیز انحصاری میباشند.

صفحه 20:
زمانبندی پروسس های مستقل: ‎RLPT‏ فالخ فرریکه سیستم ۳ پرخازنته ای ۱۰ وظبقه (پووستی) یبا ازمان اجزلبی ببهعورتت لبست زیر داریم ‎ET={ 125 8 , 10; 5 ; 115 7 49 & 6‏ 1 2 2 3 و Tl 712 13 T4 15 16 ۲7 8 19 0 الف) زمانبندی این ۱۰ وظیفه (185[6) را با الگور 11.1 انجام داده و با نمودار ‎Gantt‏ ‏زمان پایان اجرای آنها را بدست سم نمو ب) افزايش سرعت اين سيستم جند بردازنده اى را نسبت به تك بردازنده اى بدست آوريد.

صفحه 21:
زمانبندی 11۳660 ها: اشتراک مکانی a 4-CPU partition Unassigned CPU * در زمانبندی اشتراک مکانی همزمان چند 07680 وابسته به یک پروسس روی یک مجموعه پردازنده ۳ زمانبندی می شوند.

صفحه 22:
زمانبندی 11۳660 ها: اشتراک مکانی Thread A, running * مشکل زمانبندی اشتراک مکانی ارتباط بین 07680 ها است. - در شکل فوق 07660 های ۸۵0 و ۸1 در دو فاز متفاوت زمانبندی شده و زمان ارتباط بین آنها معادل با دو برش زمانی یا 200۳05 است.

صفحه 23:
زمانبندی 07600 ها: ‎Gang‏ Gang ‏زمانبندی‎ * گروه بندی 7660 های وابسته در یک واحد(22۳0)) تمامی اعضای یک گروه 2110 باید همزمان روی پرازنده های مختلف ۳]7) به صورت اشتراک زمانی زمان بندی شوند. تمامی اعضای یک ‎Lb Gang‏ در برش هاى زمانى يكسان همزمان با هم شروع به اجرا شوند و هم زمان با هم اجراى آنها خاتمه يابد.

صفحه 24:
ابا شفن,پردازنده: به وت غیر اتعسازی:با بوش ای زمانی واحد. زمانبندی 28110) برای یک مجموعه 0۳680 ر anh جندیردازنده CPU Gang - thread ,cs.sk;

صفحه 25:
زمانبندی پروسس های وابسته: نمودار زمانبندی

صفحه 26:
زمانبندی پروسس های وابسته:بدون هزینه ارتباطی ؟ وابستگی پروسس مها(وظایف) را گراف وظایف مشخص قن ‎OS‏ * گراف وظیفه شامل 9 پروسس (وظیفه) می باشد. 5 سیستم چندپردازنده ای شامل 2 پردازنده است. * هزينه ارتباطى بين يردازنده ها صفر است * هدف زمانبندى كاهش زمان كل اجرايى پروسس ها است.

صفحه 27:
زمانبندی پروسس های وابسته ‎Scheduling In-Forests/Out-Forests‏ ‎Task Graphs‏ * الگوریتم: - سطوح گره های گراف از بالا به پایین محاسبه شده و به عنوان اولویت زمانبدی گره ها در نظر گرفته می ‏ - موقعی که پردازنده ای در دسترس باشد آن به گره (پروسس) آماده با بالاترین اولویت اختصاص می یابد.

صفحه 28:
زمانبندی پروسس های وابسته ‎Scheduling In-Forests/Out-Forests‏ ‎Tack Granhe‏ Time, Pi P2 P3 P4 Task Graph Task Priority مثال: زمانبندی گراف وظیفه روی چهار پردازنده

صفحه 29:
زمانبندی پروسس های وابسته ‎Scheduling Interval Ordered Tasks‏ * الگوریتم: - مقدار تمامی 8110085850۳ های هر گره گراف به عنوان اولویت زمانبدی گره ها در نظر گرفته می شود. گره های وابسته به هر گره در گراف را 511006950۳ های آن گره تعریف می - موقعی که پردازنده ای در دسترس ‎EL‏ آن به گره (پروسس) آماده با بالاترین اولویت احتصاص می یابد.

صفحه 30:
زمانبندی پروسس های وابسته ‎Scheduling Interval Ordered Tasks‏ Jake Number of ‏لما‎ Task Graph ‘Task Priority مثال: زمانبندی گراف وظیفه روی سه پردازنده

صفحه 31:
زمانبندی پروسس های وابسته:با هزینه ارتباطی گراف وظیفه شامل ‏ پروسس (وظیفه) می باشد. سیستم چندپردازنده ای شامل "« پردازنده است. هزينه ارتباطى بين وظيفه ها که روی دو پردازنده مختلف زمانبندی می شوند غیر صفر است و مقدار آن روی یال های گراف مشخص می شود. هزینه ارتباطی بین وظیفه ها که روی یک صفر است و در زمانبندی باید به این نکته دقت شود. نده یکسان زمانبندی می شوند. هلف زمانبنی:کامقن زمان کل انجرانی پروستن,ها آننت:

صفحه 32:
زمانبندی پروسس های وابسته:با هزینه ارتباطی ۴۶ وه 35 25 5 زمانبندی روی یک پردازنده با الگوریتم های زمانبندی 1 111,۳2 و ‎MCP‏

صفحه 33:
زمانبندی پروسس های وابسته:با هزینه ارتباطی Execution time ‏ع‎ Data Communication time زمانبندی روی دو پردازنده با الگوریتم زمانبندی 156

صفحه 34:
زمانبندی پروسس های وابسته‌با هزینه ارتباطی زمانبندی روی دو پردازنده با الگوریتم زمانبندی 1۷110

صفحه 35:
زمانبندی پروسس های وابسته:با هزینه ارتباطی 3a MCP. DCP. DSC cle ps5 ‏مثال: زمانبندی گراف وظیفه با‎ 5 Genetic

صفحه 36:
زمانبندی پروسس های وابسته‌:با هزینه ارتباطی ‎ar‏ = ۳ 0

صفحه 37:
زمانبندی پروسس های وابسته:با هزینه ارتباطی مثال: زمانبندی گراف وظیفه با الگوریتم های ‎MCP. HLFET. DSC‏ »3 ‎MD‏

صفحه 38:
ارزیابی کارایی سیستم چندپردازنده ای م : تعداد بردازنده ها (0)5: كار انجام شده توسط م پردازنده ‎plat oles (Pp)‏ با « پردازنده ۵ > (1۸ :۵0 2 170 ۳ ۱۸ (۸6 < مسبت ماه [(22 ما ۱ ‎ ۲۷۵(‏ باه ‎Cp)‏ ‎O()‏ ۱ ۵ < بلس ‎Rp)‏ ‏[(22 ص] / (م)© = ‎Ap) Oikos‏ QP) ‏(م) 1 م] / (17)0 - باس‎ OP)

صفحه 39:
ارزیابی کارایی سیستم چندپردازنده ای

صفحه 40:
ارزیابی کارایی سیستم چندپردازنده ای مثال: جمع ۱ عدد روی یک سیستم ۸ پردازنده ای با هزینه ارتباطی و بدون هزینه ارتباطی ‎nunbers to be added‏ 16 = Ooricoe arm mica @@) = 46 / )© x)= E?% 06 6/۵ - (۵0 مج - 6( 6

صفحه 41:
ارزیابی کارایی سیستم چندپردازنده ای(آرایه خطی مرتب سازی) DARA WH BABA BH BMH 6۵ 4h odd steps, 5 2.58 @& 3 ‏9جهلا‎ Ls (8 Sew. Se+2 ‏یمه 3سجه8ة‎ %-+1 4 ۱ ۱ 9 5 odd 3 ‏واه‎ ‎2 ‏مر پر 4ج م8 1ج مه دب م3‎ ۰ Hy) ‏ات‎ ‏جملا یمه 4جمد 1ج م3‎ valves ‏انب‎ ‎theirright ‎wetykbors

51,000 تومان