cpu چیست

  • شروع کننده موضوع Alastor
  • بازدیدها 339
  • پاسخ ها 11
  • تاریخ شروع

Alastor

کاربر نگاه دانلود
کاربر نگاه دانلود
عضویت
2019/03/07
ارسالی ها
2,669
امتیاز واکنش
15,422
امتیاز
746
محل سکونت
یوکوهاما یا هازبین هتل،فرقی نمیکنه:|
پاراللیسم در سطح thread
ویرایش

رویکرد دیگر برای دستیابی به عملکرد، اجرای چندین برنامه یا thread به صورت موازی است. در تقسیم‌بندی Flynn این رویکرد چندین دستور روی چندین دیتا (MIMD) نام دارد.

یک تکنولوژی که برای این هدف استفاده شد، تکنولوژی چند پردازشی (MP) نام دارد. چاشنی ابتدایی این نوع تکنولوژی چند پردازشی قرینه(SMP) نام داردکه در آن تعداد محدودی از سی پی یوها یک نمای منسجم از سیستم حافظهٔ خودشان را به اشتراک می‌گذارند. در این طرح‌ریزی هر سی پی یو سخت‌افزاری اضافی برای حفظ یک نمای دائماً بروز شده از حافظه دارد. با اجتناب از نماهای کهنه و مانده از سی پی یو، سی پی یوهای مذکور می‌توانند روی یک برنامه همکاری کنند و برنامه‌ها می‌توانند از یک سی پی یو به دیگری مهاجرت کنند. طرح‌ریزی‌هایی نظیر دستیابی غیر همشکل به حافظه (NUMA) و پروتکل‌های وابستهٔ مبتنی بر دایرکتوری در دههٔ ۱۹۹۰ ارائه شدند. سیستم‌های SMP به تعداد کمی از سی پی یوها محدود می‌شوند در حالیکه سیستم‌های NUMA با هزاران پردازنده موجود هستند. در ابتدای امر، چند پردازشی با استفاده از چندین سی پی یو و صفحهٔ مجزا برای برقراری ارتباط بین پردازنده‌ها ساخته شد. هنگامیکه پردازنده‌ها و ارتباط‌های بین آن‌ها تماماً روی یک تراشهٔ سیلیکون منفرد سوار شدند، تکنولوژی مذکور ریزپردازندهٔ چند هسته‌ای نام گرفت.

بعدها مشخص شد که fine-grain parallelism با یک برنامهٔ منفرد ایجاد شد. یک برنامهٔ منفرد ممکن است چندین thread (یا رشته دستورالعمل) داشته باشد که می‌توانند به‌طور جداگانه یا موازی اجرا شوند. برخی از نمونه‌های ابتدایی این تکنولوژی، پردازش ورودی/خروجی نظیر دسترسی مستقیم به حافظه را به عنوان یک thread جداگانه از thread محاسبه بکار گرفتند. یک رویکرد عمومی تر به این تکنولوژی در دههٔ ۱۹۷۰ ارائه شد. در آن زمان سیستم‌ها طوری طراحی شدند تا چندین thread محاسبه‌ای را به‌طور موازی اجرا کنند. این تکنولوژی (MT)multithreading نام دارد. این رویکرد در مقایسه با چند پردازشی به صرفه تر است زیرا فقط تعداد کمی از اجزا در داخل یک سی پی یو به منظور پشتیبانی از MT تکرار می‌شوند در حالیکه در MP تمام سی پی یو تکرار می‌شود. در MT، واحدهای اجرایی و سیستم حافظه من‌جمله کش‌ها در بین جندین thread به اشتراک گذارده می‌شوند. عیب MT این است که سخت‌افزاری که از مولتی ثردینگ پشتیبانی می‌کند در مقایسه با سخت‌افزاری که از MP پشتیبانی می‌کند برای نرم‌افزار قابل دیدن تر است و بنابراین نرم‌افزارهای ناظر نظیر سیستم‌های عامل برای پشتیبانی از MT باید متحمل تغییرات بیشتری شوند. یک نوع از MT که بکار گرفته شد block multithreading نام دارد که در آن اجرای یک thread آغاز می‌شود و زمانی‌که برای بازگشت اطلاعات از حافظهٔ خارجی باید منتظر بماند، دچار توقف عملکرد می‌شود. در این حالت سی پی یو بلافاصله به thread دیگر که آمادهٔ اجرا است سوویچ می‌کند. این سوویچ معمولاً در یک چرخهٔ کلاک از سی پی یو انجام می‌گیرد. اولترااسپارک (UltraSPARC) نمونه‌ای از این تکنولوژی است. نوع دیگری از MT مولتی ثردینگ همزمان (simultaneous multithreading) نام دارد که در آن دستورها چندین thread به‌طور موازی در طی یک چرخهٔ کلاک از سی پی یو اجرا می‌شوند.

بمدت چندین دهه از ۱۹۷۰ تا ۲۰۰۰، در طراحی سی پی یوهای عمومی دارای عملکرد بالا به میزان زیادی روی دستیابی به ILP بالا از طریق تکنولوژی‌هایی مثل piplining، کش‌ها، اجرای سوپراسکیلر، اجرای خارج از نوبت و… تأکید می‌شد. این رویه منجر به طراحی سی پی یوهای بزرگ و پر مصرفی نظیر اینتل پنتیوم ۴ شد. در دههٔ ۲۰۰۰، نابرابری روزافزون بین فرکانس‌های عامل سی پی یو و فرکانس‌های عامل حافظهٔ اصلی و نیز جدی تر شدن مسئلهٔ محو تدریجی پاور سی پی یو (power) بعلت تکنیک‌های ILP خیلی نامعمول تر موجب شد تا طراحان سی پی یو دیگر بدنبال افزایش عملکرد با استفاده از تکنیک‌های ILP نباشند. پس از آن، طراحان سی پی یو ایده‌هایی را از بازارهای کامپیوتری تجاری نظیر پردازش دادوستدی که در آن مجموع عملکرد چندین برنامه (پردازش مربوط به کار انجام شده در یک بازهٔ زمانی) مهم‌تر از عملکرد یک thread یا برنامه‌است، به عاریه گرفتند. این تغییر رویکرد می‌توان در تکثیر طراحی‌های CMP چند هسته‌ای (چند پردازشی در سطح تراشه) و به‌طور قابل ذکر طراحی‌های جدیدتر اینتل که مشابه معماری کمتر سوپرسکیلر P۶ بودند، مشاهده کرد. طراحی‌های بعدی در چندین خانوادهٔ پردازنده، CMP را نشان دادند، از جمله x86-64 Opteron و Athlon 64 X2, SPARC UltraSPARC T۱، IBM POWER۴ و POWER۵ و چندین سی پی یو ی کنسول بازی ویدئویی مشابه طراحی powerpc سه هسته‌ای ایکس باکس ۳۶۰ و ریزپردازنده‌های سلولی ۷ هسته‌ای ۷-core)) پلی استیشن ۳.
 
  • پیشنهادات
  • Alastor

    کاربر نگاه دانلود
    کاربر نگاه دانلود
    عضویت
    2019/03/07
    ارسالی ها
    2,669
    امتیاز واکنش
    15,422
    امتیاز
    746
    محل سکونت
    یوکوهاما یا هازبین هتل،فرقی نمیکنه:|
    موازی گرایی (پاراللیسم) اطلاعات
    ویرایش

    یک الگوی غیرمعمول اما به‌طور فزاینده‌ای مهم از سی پی یوها (و در حقیقت، به‌طور کلی پردازش) مربوط به موازی گرایی اطلاعات است. پردازنده‌هایی که قبلاً بحث شدند، تماماً انواعی از ابزارهای اسکیلر نامیده می‌شوند. همچنان که از نام آن پیداست، پردازنده‌های برداری (vector processors) با چندین قطعه از اطلاعات در زمینهٔ یک دستور سروکار دارند که با پردازنده‌های اسکیلر که با یک قطعه از اطلاعات برای هر دستور سروکار دارد، متفاوت است. در طبقه‌بندی Flynn، این دو نوع مواجه با اطلاعات به‌طور کلی و به ترتیب SIMD (یک دستور برای چندین داده) و SISD (یک دستور برای یک داده) نامیده می‌شود. استفادهٔ مهم در ایجاد سی پی یوهایی که با بردارهایی از اطلاعات سرو کار دارند، در بهینه‌سازی اعمالی است که در آن‌ها یک عمل (برای مثال یک جمع یا dot product)باید روی مجموعهٔ بزرگی از اطلاعات صورت گیرد. برخی از مثال‌های کلاسیک این نوع از اعمال کاربردهای مولتی مدیا (تصاویر، ویدئو و صدا) و نیز بسیاری از انواع اعمال علمی و مهندسی هستند. در حالیکه یک سی پی یو ی اسکیلر باید تمام فرایند fetching، دکودینگ و اجرا ی هر دستور و مقدار را برای مجموعه‌ای از اطلاعات انجام دهد، یک سی پی یو ی برداری می‌تواند یک عمل را روی مجموعهٔ نسبتاً بزرگی از اطلاعات با یک دستور انجام دهد. البته این امر تنها زمانی امکان‌پذیر است که کاربر مذکور نیازمند مراحل بسیاری است که یک عمل را روی مجموعهٔ بزرگی از داده‌ها اجرا می‌کند.

    اکثر سی پی یوهای وکتور ابتدایی، نظیر Cray-۱ فقط مربوط به تحقیقات علمی و کاربردهای کریپتوگرافی بودند. با این وجود، هنگامیکه مولتی مدیاها به میزان زیادی به Media دیجیتال تغییر پیدا کردند، نیاز به برخی از اشکال SIMD در سی پی یوهای کاربرد-عمومی نیز برجسته شد. مدت کوتاهی بعد ازاینکه لحاظ شدن واحدهای اجرایی نقطهٔ شناور در سی پی یوهای کاربرد-عمومی شروع به معمول شدن کرد، اختصاصی شدن و بکارگیری واحدهای اجرایی SIMD نیز در سی پی یوهای کاربرد-عمومی شروع به ظهور کرد. برخی از این اختصاص‌های SIMD ابتدایی نظیر Multimedia Acceleration eXtensions مربوط به HP و MMX اینتل فقط اینتیجر بودند.
     

    برخی موضوعات مشابه

    بالا