آموزش معماری سیستم و حافظه در برنامه نویسی پایتون

3 سال پیش
آموزش معماری سیستم و حافظه در برنامه نویسی پایتون

آموزش معماری سیستم و حافظه در برنامه نویسی پایتون

 

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش معماری سیستم و حافظه در برنامه نویسی پایتون خواهیم پرداخت.

پیشنهاد ویژه : پکیج آموزش طراحی وب سایت با پایتون و جنگو

سبک های مختلف معماری سیستم و حافظه وجود دارد که باید هنگام طراحی برنامه یا سیستم همزمان مورد توجه قرار گیرند. این بسیار ضروری است زیرا یک سیستم و سبک حافظه ممکن است برای یک کار مناسب باشد اما ممکن است مستعد خطا برای کار دیگر باشد.

معماری سیستم رایانه ای پشتیبانی از همزمانی

مایکل فلین در سال ۱۹۷۲ طبقه بندی سبک های مختلف معماری سیستم رایانه را طبقه بندی کرد. این طبقه بندی چهار سبک مختلف را به شرح زیر تعریف می کند –

 

  • جریان تک دستورالعمل، جریان تک داده (SISD)
  • جریان تک دستورالعمل، جریان چندگانه داده (SIMD)
  • جریان چند دستورالعمل، جریان داده واحد (MISD)
  • چندین جریان دستورالعمل، جریان چندگانه داده (MIMD)
  • جریان تک دستورالعمل، جریان تک داده (SISD)

 

همانطور که از نامش پیداست، چنین سیستم هایی دارای یک جریان داده ای ورودی متوالی و یک واحد پردازش واحد برای اجرای جریان داده ها هستند. آنها دقیقاً مانند سیستم های تک پردازنده هستند که دارای معماری محاسبات موازی هستند. در زیر معماری SISD آورده شده است –

SSID

 

مزایای SISD

مزایای معماری SISD به شرح زیر است –

  • به قدرت کمتری نیاز دارد.
  • هیچ مشکلی از پروتکل ارتباطی پیچیده بین چندین هسته وجود ندارد.

معایب SISD

معایب معماری SISD به شرح زیر است –

  • سرعت معماری SISD دقیقاً مانند پردازنده های تک هسته ای محدود است.
  • برای کاربردهای بزرگتر مناسب نیست.

جریان تک دستورالعمل، جریان چندگانه داده (SIMD)

همانطور که از نامش پیداست، چنین سیستم هایی دارای چندین جریان داده ورودی و تعداد واحدهای پردازشی هستند که می توانند در هر زمان خاص بر اساس یک دستورالعمل واحد عمل کنند. آنها دقیقاً مانند سیستم های چند پردازنده ای هستند که معماری محاسبات موازی دارند. در زیر معماری SIMD آورده شده است –

simd

 

بهترین مثال برای SIMD کارت های گرافیک است. این کارت ها صدها واحد پردازش مجزا دارند. اگر ما در مورد تفاوت محاسباتی بین SISD و SIMD صحبت کنیم، سپس برای آرایه های اضافه شده [۵ ، ۱۵ ، ۲۰] و [۱۵ ، ۲۵ ، ۱۰] ، معماری SISD باید سه عملیات مختلف جمع را انجام دهد. از طرف دیگر ، با معماری SIMD می توانیم آن را در یک عملیات افزودن اضافه کنیم.

مزایای SIMD

مزایای معماری SIMD به شرح زیر است –

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

معایب SIMD

معایب معماری SIMD به شرح زیر است –

  • ارتباط پیچیده ای بین تعداد هسته های پردازنده وجود دارد.
  • هزینه بالاتر از معماری SISD است.

جریان چند داده ای تک دستورالعمل (MISD)

سیستم های دارای جریان MISD دارای تعداد واحدهای پردازشی هستند که با اجرای دستورالعمل های مختلف در یک مجموعه داده واحد، عملیات مختلفی را انجام می دهند. در زیر معماری MISD آورده شده است –

 

MISD

 

نمایندگان معماری MISD هنوز از نظر تجاری وجود ندارند.

چندین جریان دستورالعمل، جریان چندگانه داده (MIMD)

در سیستم با استفاده از معماری MIMD، هر پردازنده در یک سیستم چند پردازنده می تواند مجموعه ای از دستورالعمل های مختلف را به طور مستقل روی مجموعه مختلف مجموعه داده به طور موازی اجرا کند. این در مقابل معماری SIMD است که در آن یک عملیات واحد روی چندین مجموعه داده اجرا می شود. در زیر معماری MIMD آورده شده است –

MIMD

چند پردازنده معمولی از معماری MIMD استفاده می کند. این معماری ها اساساً در تعدادی از زمینه های کاربردی مانند طراحی به کمک رایانه / ساخت به کمک رایانه ، شبیه سازی، مدل سازی، سوئیچ های ارتباطی و غیره استفاده می شوند.

معماری حافظه پشتیبانی از همزمانی

در حالی که با مفاهیمی مانند همزمانی و موازی کاری کار می کنید ، همیشه نیاز به سرعت بخشیدن به برنامه ها وجود دارد. یک راه حل که طراحان رایانه پیدا کرده اند ، ایجاد چند رایانه با حافظه مشترک است ، به عنوان مثال ، رایانه هایی که دارای فضای آدرس فیزیکی واحد هستند ، و تمام هسته های پردازنده به آن دسترسی پیدا می کند. در این سناریو ، سبک های مختلفی از معماری وجود دارد اما سه سبک مهم معماری زیر است:

UMA (دسترسی حافظه یکنواخت)

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

وقتی دسترسی همه پردازنده ها به همه دستگاه های جانبی برابر باشد ، سیستم را چند پردازنده متقارن می نامند. هنگامی که فقط یک یا چند پردازنده می توانند به دستگاه های جانبی دسترسی پیدا کنند ، سیستم را چند پردازنده نامتقارن می نامند.UMA

دسترسی حافظه غیر یکنواخت (NUMA)

در مدل چند پردازنده ای NUMA ، زمان دسترسی با محل قرارگیری کلمه حافظه متفاوت است. در اینجا، حافظه مشترک از نظر جسمی بین تمام پردازنده ها توزیع می شود که حافظه محلی نامیده می شود. مجموعه تمام حافظه های محلی یک فضای آدرس جهانی را تشکیل می دهد که همه پردازنده ها می توانند به آن دسترسی داشته باشند.

NUMA

معماری حافظه نهان فقط (COMA)

مدل COMA نسخه تخصصی مدل NUMA است. در اینجا ، تمام حافظه های اصلی توزیع شده به حافظه نهان تبدیل می شوند.

coma

 

منبع.

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

  1. آموزش همزمانی در برنامه نویسی پایتون
  2. آموزش همزمانی در برنامه نویسی پایتون _ مقدمه
0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه