پردازنده های اسلیپ استریم
پردازنده های اسلیپ استریم – ایران ترجمه – Irantarjomeh
مقالات ترجمه شده آماده گروه کامپیوتر
مقالات ترجمه شده آماده کل گروه های دانشگاهی
مقالات
قیمت
قیمت این مقاله: 68000 تومان (ایران ترجمه - Irantarjomeh)
توضیح
بخش زیادی از این مقاله بصورت رایگان ذیلا قابل مطالعه می باشد.
مطالعهای در زمینه پردازنده های اسلیپ استریم
شماره | ۶۷ |
کد مقاله | COM67 |
مترجم | گروه مترجمین ایران ترجمه – irantarjomeh |
نام فارسی | مطالعهای در زمینه پردازنده های اسلیپ استریم |
نام انگلیسی | A Study of Slipstream Processors |
تعداد صفحه به فارسی | ۶۰ |
تعداد صفحه به انگلیسی | ۱۲ |
کلمات کلیدی به فارسی | پردازنده، اسلیپ استریم |
کلمات کلیدی به انگلیسی | Slipstream, Processor |
مرجع به فارسی | دپارتمان مهندسی برق و کامپیوتردانشگاه ایالتی کورولینای شمالی |
مرجع به انگلیسی | North Carolina State University |
کشور | ایالات متحده |
مطالعهای در زمینه پردازندههای اسلیپ استریم
پردازنده اسلیپ استریم از طریق پرش یا بایپاس نمودن دینامیکی روالهای محاسبه غیرالزامی جهت اعمال یک رویه پیشرفت بجلوی صحیح، طول برنامه در حال اجرا را کاهش میدهد. در نتیجه، برنامه کوتاه شده سریعتر اجرا میگردد، اما لازم بذکر است که این مضمون تنها تحت عنوان یک نظریه مطرح میباشد. بر این اساس، یک کپی ثانویه و کاهش نیافته از این برنامه بصورت همزمان و تا اندکی در ورای کپی کاهش یافته – با بهرهگیری از یک تراشه چند پردازنده (CMP) یا چند رشتهای همزمان (SMT) – اجرا گردید. به منظور اعمال بررسیها، برنامه کوتاه شده، کنترل خود را همراه با نتایج جریان دادهها به برنامه اصلی یا کامل انتقال میدهد. بر این اساس، به هنگامی که برنامه اصلی اقدام به کنترل برنامه کوتاه مینماید، برنامه اصلی یا کامل بواسطه داشتن تصویر دقیق آتی امر واکشی و اجرای دادهها را با کارایی بیشتری انجام میدهد. هر دوی این برنامهها سرعت خود را افزایش دادند: آنها با ادغام یا ترکیب شدن یک روال غیر تکراری متعارف را در حد اعلای عملیاتی اجرا میکنند.
در این مطالعه نسبت به مطالعه حالت اسلیپ استریمینگ با توجه به نتایج کلیدی ذیل اقدام میشود:
…
پردازنده های اسلیپ استریم
۱- مقدمه
نمونه اسلیپ استریمینگ، تنها بخشی از جریان دستورالعمل دینامیک مورد نیاز برای برنامه، به منظور اعمال رویه پیشرفت بجلو بصورت کامل و صحیح، را در اختیار دارد. بطور مثال، برخی از ترتیبها یا توالیهای دستورالعمل دارای هیچگونه تاثیر آشکاری نمیباشند. آنها نتایجی را تولید خواهند نمود که بصورت متعاقب بدانها رجوع نخواهد شد، یا آنکه وضعیت ماشین را تغییر نخواهند داد. بدین منوال توالیهای دستورالعملی وجود دارند که تاثیرات آنها آشکار بوده، اما این تاثیرات بصورت ثابتی قابل پیشبینی نمیباشند. یکی از قابل توجهترین مثالها در این زمینه روال محاسبهای میباشد که بر روی جریان کنترل تاثیر خواهد گذاشت.
۱-۱٫ مشارکت
این مقاله در زمینه پیگیری پیشنهاد اخیر ما در ارتباط با اسلیپ استریم به رشته تحریر در آمده است و بر این اساس ۴ زمینه مشارکتی در آن مد نظر قرار گرفته است.
درک اسلیپ استریمینگ
پدیده اسلیپ استریمینگ را میتوان به طرق گوناگون تشریح نموده و آن را فرا گرفت. بر این اساس، ما دو نوع از تفاسیر مختلف اسلیپ استریمینگ را تشریح خواهیم نمود که عبارتند از: تشریح کیفی که این مبحث را مورد بحث قرار میدهد که ارتقای عملکرد از چه چیزی منبعث شده است و در عین حال محدودیتهای آن نیز در این فرآیند تشریح خواهد شد. داشتن بینش در زمینه اسلیپ استریمینگ به ما اجازه خواهد داد تا تلاشهای خود را بر روی آن دسته از مضامینی معطوف داریم که از ارزش احتمالی برخوردار خواهند بود.
پردازنده های اسلیپ استریم
۲- اسلیپ استریمینگ با استفاده از پردازندههای SMT
اسلیپ استریمینگ قبلا بر روی پردازنده SMT اجرا نشده بود. کاهش ناکافی در A-stream باعث میگردید تا اسلیپ استریمینگ بر مبنای ـ SMT از قابلیت کمتری برخوردار باشد. بر این اساس، مکانیزم تصنعی حذف ـ دستورالعمل قبلی ما مورد خطاب قرار گرفته است (به بخش ذیل مراجعه شود)، بنابراین، اسلیپ استریمینگ مبتنی بر ـ SMT هم اکنون از کارایی مناسبی برخوردار میباشد و نتایج آن در این مقاله عرضه میشود.
۳- حذف دستورالعمل بصورت موثرتر
قبلا، حذف ـ اطمینان برای گروهی از دستورالعملها بطور کلی، برای تریس (Trace)، (پیگیری) مورد ارزیابی قرار گرفت. دیدگاه مبتنی بر ـ تریس به تولید کننده این اطمینان را میدهد که دستورالعملها از A-stream حذف یا برداشت نخواهند شد، مگر آنکه دستورالعملهای مشتری منطبق با آن نیز حذف گردد. عدم اعمال چنین محدودیتی باعث پیشبینیهای نادرست زیادی در زمینه حذف ـ دستورالعمل گردید.
۴- بایپاس نمودن واکشی دستورالعمل
A-stream به هنگامی بیشترین تاثیر را خواهد داشت که هر دوی تعداد دستورالعملهای واکشی شده و اجرا شده کاهش یابند. کاهش تعداد دستورالعملهای واکشی شده نیازمند داشتن یک مدل توالی مختلف در مقایسه با مدل پیشبینیهای انشعاب متعارفی میباشد که در حال حاضر موجود است. یک پیشبین انشعاب متعارف به روشی بدیع و ساده تغییر یافته تا آنکه بتواند واکشی توالیهای دستورالعمل دینامیک و بزرگ را بایپاس نماید.
۲-۱٫ رئوس کلی مقاله
این مقاله به شرح ذیل تنظیم شده است. بخش ۲ نسبت به توسعه مدلهایی برای درک اسلیپ استریمینگ و بررسی محدودیتهای اصلی آن اقدام میکند. بخش ۳ به بررسی میکرو معماری اسلیپ استریم پرداخته و مکانیزمهای حذف ـ دستورالعمل جدید را معرفی میکند. بخش ۴ و ۵ اقدام به معرفی محیط شبیه سازی و نتایج آن به ترتیب مینماید. موارد مرتبط در بخش ۶ مورد بحث قرار گرفته و نتیجهگیری نیز در بخش ۷ عرضه میشود.
پردازنده های اسلیپ استریم
۲- درک اسلیپ استریمینگ
ما در این مبحث دو تفسیر متفاوت از پدیده اسلیپ استریمینگ را جهت درک بهتر این الگو عرضه میداریم. در زیر بخش ۱-۲ ، A-stream بعنوان رشته یا زنجیره «اصلی» معرفی گردیده و R-stream نیز تحت عنوان رشته «کمکی» برای A-stream مطرح میگردد. در زیر بخش ۲-۲ نقشها معکوس میگردند: بدان معنا که R-stream رشته «اصلی» و A-stream رشته «کمکی» R-stream خواهد شد. بطور حقیقی، این دو برنامه در یک پردازنده اسلیپ استریم از نقطه نظر عملکرد مترادف بوده و هر دو سودمند میباشند، بنابراین هر یک از این تفسیرها میتواند معتبر باشد.
۱-۲٫ R-stream : کنترلگر سریع
A-stream بطور صریح هیچگونه عملکردی که دارای مزیت در مقایسه با R-stream باشد را در بر ندارد. در مقابل، R-stream نسبت به کنترل (و در برخی از مواقع مسیردهی مجدد) A-stream بدون کاهش سرعت آن اقدام میکند. این امر به واسطه آنکه روال کنترل بصورت موروثی موازی میباشد امکانپذیر خواهد بود. همانگونه که در شکل ۱ نشان داده شده است، R-stream یک کنترل کننده کمکی سریع برای A-stream میباشد.
۲-۲٫ A-stream : یک پیش بین مبتنی بر ـ برنامه
بطور جایگزین، A-stream بعنوان یک پیش بین یا پیشگویی کننده برای R-stream مطرح میباشد. بطور مثال، A-stream از طریق دقت پیشگویی انشعاب به عملکرد R-stream کمک مینماید. پیشگوییهای انشعاب دینامیک به دو دسته مطمئن و نامطمئن تقسیم میشوند، شکل ۲٫ پیشگوییهای انشعاب مطمئن با احتمال بیشتری درست میباشند و انشعابهای منطبق و محاسبه که این انشعابها را تغذیه میکنند از A-stream حذف گردیدهاند.
۳-۲٫ اهمیت بایپاس نمودن واکشی دستورالعمل
تحقیقات قبلی نشان داده است که در غیاب هر یک از محدودیتهای منابع، عملکرد مرتبط معمولا بوسیله انشعابهای پیشبینی نادرست تعیین میگردد. این بدان معنا است که در یک پردازنده ایدهآل با واکشی نامحدود و پهنای باند اجرایی، انشعابهای پیشبینی شده نادرست و رشتههای وابستگی به نظر حاکم بر مسیر بحرانی برنامه میباشند. A-stream قابلیت کاهش این مسیر بحرانی را نخواهد داشت، چرا که رشتههای وابستگی انشعابهای پیشگویی شده نادرست بطور ایمنی از A-stream حذف نشدهاند ـ
۴-۲٫ روشهای دیگر برای کاهش A-stream
یک روش برای کاهش A-stream حذف محاسبه قابل پیشبینی ـ انشعاب میباشد. احتمال دیگر حذف محاسبه قابل پیشبینی ـ مقدار است. همانگونه که در شکل ۲ در مضمون پیشبینی انشعاب مطرح گردید، یک پیش بین مقداری بهتر را میتوان بصورت کلی از طریق ترکیب پیش بین مقداری متعارف با A-stream حاصل آورد: پیش بین مقداری نسبت به شناسایی و حذف محاسبه قابل پیشبینی ـ مقداری به میزان زیاد اقدام مینماید و در مقابل A-stream بر روی مقادیری تمرکز خواهد داشت که پیشبینی آنها مشکل خواهد بود. R-stream یک استریم دارای مقادیر دقیق متشکل از مقادیر مطمئن تصدیق نشده و مقادیر محاسبه شده را مد نظر قرار میدهد.
پردازنده های اسلیپ استریم
۳- تشریح میکرو معماری
یک پردازنده اسلیپ استریم نیازمند دو مضمون مرتبط با معماری میباشد، یکی از این مضامین یا محتویات برای A-stream و دیگری برای stream R- مد نظر بوده و همچنین یک سخت افزار جدید برای کنترل حذف – دستورالمل در A-stream و حالت ارتباطی بین رشته ها موجود میباشد. یک دیاگرام بلوک سطح بالا برای پردازنده اسلیپ استریم که بر روی نقطه بالایی یک تراشه دو سویه چند پردازنده اجرا شده است در شکل ۳ مشخص گردیده است، البته لازم به ذکر است که باید از پردازنده SMT نیز استفاده شود. جعبه های سایه دار یا رنگی معرف پردازنده های اصلی متشکل از چند پردازنده میباشند.
۱-۳ ساخت برنامه کوتاه تر
۱-۱-۳ پیشبین- IR پایه. پیشبین-IR شبیه به یک پیشبین متعارف میباشد. دراین مقاله پیشبین-IR به صورت منحصر به فرد به یک پیشبین gshare اندیس میشود، بدان معنا که یک اندیس به وسیله XORing و بیت های سابقه انشعاب کلی فرم میپذیرد. هر ورودی جدول حاوی اطلاعات برای بلوک پایه دینامیک واحد خواهد بود.
۲-۱-۳ پیشبین-IR ارتقا یافته: بایپاس نمودن واکشی دستورالعمل. با توجه به پیشبین – IR پایه که در بخش ۱-۱-۳ تشریح شد، A-stream بر حسب تعداد دستورالعمل های واکشی شده کاهش نخواهد یافت. تنها تعداد دستورالعمل های اجرا شده کاهش خواهند یافت. در صورتی که پهنای باند اجرا نسبتاً نامحدود باشد، بر این اساس A-stream به میزان قابل توجهی کاهش نخواهد یافت.
۳-۱-۳٫ پیش بین ـ IR . پیش بین ـ IR دستورالعملهای R-stream ، آدرسها و مقادیر کنار گذاشته را مورد استفاده قرار میدهد. این دستورالعملها بافر شده و بر اساس وابستگیهای داده، مدارات یا اجزای مرتبط در بین بافرها بصورت دینامیکی پیکربندی گردیده تا آنکه اتصالات و ارتباطات از مشتری به دستورالعملهای تولید کننده برقرار گردند. به عبارت دیگر، یک نمودار جریان داده معکوس (R-DFG) ساخته میشود.
۲-۳ بافر تأخیر
بافر تأخیر یک صف FIFO ساده میباشد که به A-stream اجازه میدهد نسبت به برقراری ارتباط با نتایج جریان کنترل و جریان داده با R-stream اقدام کند. A-stream هر دو سابقه کامل نتایج انشعاب و سابقه نسبی مقادیر عملوند را به داخل بافر تحویل میفرستد. این امر در شکل ۳ با جهت نماها یا پیکانهای توپر از بافر مرتب کننده A-stream (چپ ترین پردازنده ) به بافر تأخیر نشان داده شده است. سابقه مقداری به صورت نسبی میباشد چرا که تنها زیرمجموعه این برنامه به وسیله A-stream اجرا میشود. سابقه کنترل کامل، با این وجود موجود میباشد، چرا که پیشبین – IR نسبت به پیشبینی کلیه انشعاب ها اقدام میکند، حتی چنانچه A-stream کلیه دستورالعمل ها را واکشی ننموده باشد (فصل ۲-۱-۳).
۳-۳ ترمیم پیشبینی نادرست – IR
یک پیشبینی نادرست حذف – دستورالعمل یا پیشبینی نادرست – IR به هنگامی رخ خواهد داد که آن دسته از دستورالعمل های A-stream حذف گردند، که در حقیقت نباید حذف شوند. A-stream هیچ گونه روشی برای پیشبینی اشتباه – IR ندارد، بنابراین، به کنار گذاشتن دستورالعمل ادامه داده و وضعیت معماری خود را با تخریب مواجه میسازد. دو چیز برای ترمیم از حالت پیشبینی اشتباه – IR لازم خواهد بود، اولاً پیشبینی نادرست – IR را باید تشخیص داد و دوم باید حالت تخریب شده را شناسایی نمود تا بتوان بر روی آن عملکردهای ترمیم موثری را انجام داد.
پردازنده های اسلیپ استریم
۴- محیط شبیه سازی
ما نسبت به توسعه یک شبیه ساز اجرایی با جزئیات مربوطه برای پردازنده اسلیپ استریم اقدام نمودیم. این شبیه ساز بطور دقیق معماری نشان داده شده در شکل ۳ و معرفی شده در بخش ۳ را معرفی کرده است: A-stream آدرسها / مقادیر احتمالا نادرست و واقعی همراه با نتایج انشعاب را تولید میکند. R-stream و تشخیصگر ـ IR نیز A-stream را کنترل نموده و عملکردهای ترمیم را آغاز مینمایند. وضعیت مرتبط با A-stream از طریق موقعیت مربوط به R-stream ترمیم میگردد. این شبیه ساز خود از طریق یک شبیه ساز کاربردی، که بصورت مستقل و موازی با شبیه ساز زمانبندی تفصیلی اجرا میشود، مورد ارزیابی و تصدیق قرار میگیرد. شبیه ساز کاربردی نسبت به بررسی نتایج جریان کنترل و جریان داده R-stream از کار افتاده اقدام میکند.
۵- نتایج
۱-۵٫ نتایج عملکرد اسلیپ استریم
در این بخش، ما عملکرد ۸ مدل را مورد بررسی قرار میدهیم. ۳ مورد از این مباحث در زمینه پیکربندیهای فوق سنجشی (SS) میباشند. ۴ مورد نیز در زمینه پیکربندیهای تراشه ـ چند پردازنده (CMP) همراه با اسلیپ استریمینگ میباشد. یک مورد نیز در خصوص پیکربندی چند رشتهای همزمان (SMT) با اسلیپ استریمینگ است.
۲-۵٫ حذف دستورالعمل
…
۳-۵٫ پیشبینی
در شکل ۱۱، ما ارتقای عملکرد سه مدل با توجه به SS(64×4) را نشان میدهیم. اولین ارتقا در ارتباط با SS(64×4) همراه با ارزش پیش بینی افزوده متعارف میباشد. یک پیشبین مقدار مبتنی بر – متن(CVP) بزرگ بکار گرفته شده است (بترتیب ورودیهای ۲۱۸ و ۲۲۰ در سطوح اول و دوم). دومین ارتقا CMP(2x64x4)/byp میباشد، اما R-stream از مقادیر A-stream بصورت حدسی استفاده نمیکند (بدون پیشبینی مقداری). سومین مورد ارتقا CMP(2x64x4)/byp است.
پردازنده های اسلیپ استریم
۶- تحقیقات مرتبط
استریم – تکراری/ استریم پیشرفته چند رشتهای همزمان (AR-SMT) بر مبنای این درک میباشد که رویهها و تحمل پذیری خطای عملکرد معماری میکرو مرتبط با هم میباشند. افزونگی زمانی – اجرای دو بار یک برنامه برای تشخیص خطاهای گذرا – ارزانتر از افزونگی سخت افزاری میباشد، اما در عین حال، چنین موردی باعث دوبل شدن زمان اجرا میشود. AR-SMT دو برنامه را بطور همزمان اجرا میکند، اما این مورد با تاخیر (از طریق بافر تاخیر) همراه خواهد بود، که باعث کاهش اورهد عملکرد افزونگی زمانی خواهد شد. نتایج حاصله از طریق برقراری ارتباط با کلیه نتایج کنارگذاشته A-stream به R-stream مورد مقایسه قرار گرفته و R-stream کنترلها را اعمال میدارد. در اینجا، R-stream مفاهیم حدسی را مشخص میسازد.
پردازنده های اسلیپ استریم