مباحث آموزشی ICDL در سایت

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

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

مقالات و مباحث برگزیده سایت:

تبلیغات

ساخت و طراحی سایت

تبلیغات در سایت

فهرست های مقالات

اکثریت بازدید کنندگان سایتها از طریق موتورهای جستجو به آنها دسترسی پیدا می کنند. به همین دلیل رتبه یک سایت در نزد موتورهای جستجوگر، اهمیت زیادی در دنیای وب و اینترنت دارد.

افزایش رتبه سایت

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

سایر مباحث سایت

تبلیغات

بورس کالا

سایت سهام و بورس

معماري Intel Core2 در مقابل AMD Athlon 64 (قسمت 2)

پیش واکشی و کاشه ‌نمودن هوشمند تر

اطمینان از موجودیت دستورالعمل ها و داده ها در داخل حافظه کاشه پیش از اجرای دستورالعمل، یکی از مهمترین دغدغه های طراحان معماری پردازنده در عصر پردازنده های 3 گیگاهرتزی است، این امر شرایط لازم را برای افزایش کارایی با زیاد شدن فرکانس کاری پردازنده را فراهم می‌سازد. در غیر این صورت فرکانس بالاتر به معنی صرف زمان انتظار بیشتر برای رسیدن اطلاعات به پردازنده خواهد بود. بخشی از پردازنده که حافظه کاشه را برای اجرای دستورالعمل ها آماده می‌سازد ، «بخش پیش واکشی» نام دارد، با این وجود الگوریتم های سخت‌افزاری موجود برای پیش واکشی همیشه وظیفه خود را با موفقیت انجام نمی‌دهند و مورد‌های اندکی هنوز وجود دارد که پس از ورود دستورالعمل به خط لوله (توضیحات بیشتردر مورد این اصطلاحات در سایر مقالات سایت میکرو رایانه) داده ها با تاخیر از حافظه کاشه دریافت می‌شوند. این موضوع باعث می‌شود تا کارایی کلی پردازنده به ویژه در برنامه‌هایی که به پهنای باند حافظه حساس هستند، کم شود.

بخش پیش واکشی در معماری Core™ بدون هیچ تردیدی از آنچه در معماری های K8 و NetBrust یافت می‌شود برتر است. هر هسته پردازنده ای که از این معماری بهره می برد حداقل سه واحد پیش واکشی (دو واحد برای داده و یک واحد برای دستورالعمل) مختص به خود دارد، دو واحد پیش واکشی دیگر نیز برای کاشه سطح 2 این پردازنده ها در نظر گرفته شده است. لذا پردازنده های دو هسته ای Core2 که با این معماری عرضه خواهند شد با 8 واحد «پیش واکشی» مجزا می توانند از پهنای باند حافظه موجود به صورت موثر‌تری استفاده کرده و ضریب اطمینان حضور اطلاعات در حافظه کاشه را هنگام اجرای یک دستورالعمل بالا برند.

حافظه کاشه موجود در پردازنده های مبتنی بر معماری Core نیز در افزایش کارایی آن موثر است. یک حافظه کاشه سطح دو 4 مگابایتی میان هر دو هسته پردازنده به اشتراک گذاشته شده است و دسترسی به آن در 12 تا 14 سیکل ساعت موثر خواهد بود. حافظه کاشه سطح یک داده و دستورالعمل نیز هر دو تا 32 کیلوبایت با زمان دسترسی 3 سیکل ساعت ارتقا پیدا کرده‌اند. باید اضافه کرد حافظه کاشه Trace که در معماری NetBrust از آن بهره گرفته شده بود، با توجه به خط لوله های کوتاه Core کنار گذاشته شده است. این حافظه اساسا به عنوان یک بافر برای دستورالعمل های کدگشایی‌ نشده به کار گرفته می شد در حالی که این واحد برای خط لوله های طولانی NetBrust مفید واقع شده بود ، اینتل تشخیص داده که طرح سنتی حافظه کاشه سطح یک در این معماری موثرتر می باشد.

جدول مقایسه تکنولوژی به کار رفته در معماری پردازنده های مدرن AMD و Intel

جدول شماره 1

تنها با یک نگاه سریع به جدول شماره «1» کاملا روشن خواهد شد که زیر سیستم حافظه طراحی شده برای Core™ نسبت به سایر معماری ها موثرتر است، میزان حافظه کاشه سطح 2 در پردازنده های مبتنی بر این معماری دو برابر پردازنده های دو هسته ای AMD است، علاوه بر این با وجود افزایش حجم آن میانگین تاخیر دسترسی به حافظه کاشه سطح 2 حداقل باقی مانده است، این حافظه اشتراکی، امکان اختصاص یافتن بیش از 2 مگابایت حافظه به هر هسته را فراهم ساخته. هر دو حافظه کاشه سطح 1 و 2 با گذرگاه داخلی 256 بیت با پهنای باند بسیار گسترده ای به هسته پردازنده متصل هستند.

Core در برابر K8 : زیرسیستم حافظه

مهمترین رقیب Core ، معماری K8 دو ویژگی برتر کوچک اما غیرقابل چشم پوشی در زیرسیستم های حافظه دارد.

اولین ویژگی حافظه کاشه (توضیحات بیشتردر مورد این اصطلاحات در سایر مقالات سایت میکرورایانه) سطح یک بزرگتر آن است، هر دو بخش دستورالعمل و داده این حافظه، 64 کیلوبایت گنجایش دارند در حالی که طراحان Core بر این بخش ها 32 کیلوبایت در نظر گرفته اند. این تنها یک برتری کوچک است چرا که انتظار می رود حافظه 8 طرفه 32 کیلوبایتی، عملکرد بسیار نزدیکی نسبت به حافظه 2 طرفه 64 کیلوبایتی داشته باشد.

ویژگی دوم و با اهمیت تر معماری K8، «کنترلرحافظه» مجتمع در داخل پردازنده است. در کامپیوترهای مبتنی بر این معماری حافظه اصلی به صورت مستقیم توسط «کنترلر حافظه» داخلی پردازنده مدیریت می شوند، در حالی که در کامپیوترهای مبتنی بر معماری های Intel «کنترلرحافظه» در داخل چیپ‌ست «پل‌شمالی» مادربرد قرار داشته و تعامل پردازنده با حافظه اصلی، از این طریق صورت می گیرد. «کنترلرحافظه» مجتمع در داخل پردازنده، دسترسی بی واسطه به حافظه اصلی با تاخیر کمتر را به همراه دارد.

تاخیر دسترسی به حافظه اصلی در کامپیوترهای پنتیوم 4 تقریبا دو برابر کامپوترهای Athlon 64 است (80 الی 90 در برابر 45 الی50 نانوثانیه). با این وجود مهندسین اینتل در معماری جدید خود راه‌ کارهای متعددی مانند «آشکارسازی حافظه» برای پنهان کردن این تاخیر از چشمان پردازنده ابداع کرده‌اند که در ادامه به آنها اشاره خواهیم کرد.

ADM INTEL

دو ویژگی برتر مطرح شده در معماری K8 توسط دیگر برتری های زیر سیستم حافظه معماری Core قابل چشم پوشی هستند، پردازنده های مبتنی بر معماری Core‌ دارای حافظه کاشه سطح دو گسترده تر و واحدهای پیش واکشی هوشمندتری نسبت به K8 هستند. حافظه کاشه سطح یک در Core پهنای باندی نزدیک به دو برابر پهنای باند K8 ارائه می‌کند (اندازه گیری شده با نرم افزار ScienceMark) علاوه بر این در پیکربندی های دو هسته ای نیز حافظه کاشه سطح دو در Core حدود 2.5 برابر سریع تر از آنچه که معماری K8 در پردازنده های Athlon 64 X2 ارائه کرده، عمل می کند.

کدگشایی هوشمندتر

Core اولین معماری در دنیای پردازنده های x86 است که به 4 واحد کدگشایی x86 تجهیز شده است: 3 «کدگشای ساده» و یک «کدگشای پیچیده». وظیفه واحدهای کدگشایی در تمام پردازنده های x86 کنونی تنها ترجمه کردن دستورالعمل های ورودی (شامل کدعملگر و آدرس ها) نیست، بلکه ترجمه دستورالعمل ها با طول متغییر 1 الی 15 بیتی به دستورالعمل های از پیش تعیین شده با طول ثابت (دستورالعمل های RISC) که زمانبندی و اجرای آنها ساده تر است نیز می باشد، اینتل نام این دستورالعمل ها کدگشایی شده را micro-op نهاده است.

در معماری Core، اکثر دستورالعمل ها x86 توسط یکی از سه واحدکدگشایی ساده به یک micro-op ترجمه می شوند و سایر دستورالعمل های سطح بالایی که حداکثر با چهار micro-op بیان می‌شوند، توسط واحد کدگشایی پیچیده کدگشایی می‌گردند.

یکی دیگر از نوآوری های معماری Core، «همجوشی macro-op» نام دارد، این ویژگی ترکیب دو دستورالعمل وابسته x86 را ممکن می‌سازد. به عنوان مثال دستورالعمل مقایسه (CMP) با دستورالعمل پرش (JNE) به کمک این ویژگی ترکیب شده و به یک micro-op کدگشایی می‌شود. این دستورالعمل ها به طور عمومی نتیجه کامپایل عبارات شرطی if، then و else هستند.

ماکرو فیوزن اینتل

تصویر شماره 1

به کمک این نوآوری، پردازنده هایی که از معماری Core بهره می‌برند، توانایی کدگشایی پنج دستورالعمل را در هر سیکل ساعت دارند ، با توجه به تصویر شماره (1)، پنج دستورالعمل به صورت هم زمان از صف دستوالعمل ها خوانده شده و در نهایت چهار micro-op کدگشایی می‌شود.

به گفته اینتل به طور متوسط در برنامه های عمومی کامپیوتر، از میان هر 10 دستورالعمل استاندارد x86 که به پردازنده ارسال می‌شود دو دستورالعمل قابل ادغام با همدیگر هستند و دستورالعمل ترکیب شده مسیر خط‌لوله را همانند یک دستورالعمل ساده طی کرده و در پایان خط لوله تاثیر مشابه با حالت ترکیب نشده بر روی ثبات‌های پردازنده خواهد گذاشت. در صورتی این ادعای اینتل صحت داشته باشد، «همجوشی macro-op» حدود 11 درصد افزایش کارایی را به ارمغان خواهد آورد.

دیگر نوآوری اینتل در حوزه کدگشایی معماری اینتل «همجوشی micro-op» نام دارد، هدف نهایی این ویژگی که از معماریP-M پردازنده های Core Duo به ارث برده شده ترکیب micro-opها با یکدیگر است. دستورالعمل های پیچیده ی اندکی وجود دارند که پس از کدگشایی به چندین micro-op تبدیل می شوند، در مقابل دستورالعمل های ساده متعددی نیز هستند که نمی توان آنها را با یک micro-op بیان نمود. به عنوان مثال دستور ساده ADD (جمع) در صورتی که عملوندهایش ثبات‌های پردازنده باشند (مانند ADD EBX,EAX) به سادگی به یک micro-op کدگشایی می‌شود اما اگر یکی از عملوند‌ها آدرس خانه‌ای از حافظه باشد پیچیدگی این دستور ساده برای پردازنده بسیار زیاد می شود. مانند دستور ADD [mem],EAX که بر اساس آن مقدار ثبات EAX باید با مقدار خانه mem حافظه جمع شده و حاصل در خانه mem قرار گیرد.

در معماری‌های ابتدایی مانند آنچه که در «پنتیوم پرو» به کار برده شده بود، این نوع دستورالعمل ها به چندین micro-op شکسته می‌شد، زیرا واحد‌های محاسباتی پردازنده تنها به ثبات ها دسترسی مستقیم برای محاسبات خود دارند. بنابر این در بهترین حالت دستورالعمل ADD [mem],EAX به دستورالعمل‌های زیر شکسته می‌شود:

• «بارگذاری» : MOV EBX,[mem]a
• محاسبات منطقی و ریاضی : ADD EBX,EAX
• «ذخیره‌سازی» : MOV [mem],EBX

«همجوشی micro-op» امکان ترکیب دستور «بارگذاری» با دستور محاسباتی را میسر می سازد، بنابر به کمک این ویژگی تنها یک micro-op برای دستورالعمل بالا توسط واحد کدگشایی تولید می‌شود. این امر چندان کار کوچکی نیست چرا که در طرح‌های قدیمی کنارهم قرار دادن عملگر‌های محاسباتی با «بارگذاری» موجب طولانی شدن خط‌لوله و پایین آمدن حداکثر فرکانس کاری پردازنده می‌شد. در معماری نوین اینتل با استفاده از مدار‌های بزرگ و هوشمندتر که به صورت همزمان چندین «همجوشی micro-op» انجام می‌دهند، این امر بدون اعمال محدودیت قابل ملاحظه ممکن گشته است.

Core در برابر K8 : کدگشایی

به نظر شما چگونه سه واحد «کدگشایی ساده» به اضافه یک واحد «کدگشایی پیچیده» در معماری Core با سه واحد «کدگشایی پیچیده» موجود در معماری K8 رقابت می‌کند؟

معماری ابتدایی پردازنده های Athlon (معماری K7) (برای مطالعه بیشتر دراین مورد به سایر مقالات سایت میکرو رایانه مراجعه نمایید) دو شیوه کدگشایی «مسیر برداری» و «مسیر مستقیم» داشت. کدگشایی «مسیر برداری» یک دستورالعمل منجر به چندین دستورالعمل شبه RISC شده (که AMD آنها را macro-op نام نهاده) و کدگشایی «مسیر مستقیم» منجر به یک macro-op می شود هر یک از واحدهای کدگشایی در K7 دارای توانایی کدگشایی به دو شیوه مذکور بودند. اما از دیدگاه عملکرد، کدگشایی «مسیر مستقیم» به دلیل داشتن تعداد macro-op کم‌تر ترجیح داده می‌شد. اگر از این که ما معماری منسوخ شده K7 را تحلیل می کنیم شگفت زده شده اید باید اضافه کنیم که معماری K8 به طور گسترده ای بر پایه معماری K7 طراحی گشته است.

هر سه واحد «کدگشایی پیچیده» K7 قادر به کدگشایی «مسیر مستقیم» اکثریت دستورالعمل های x86 می‌باشد و بخش اندکی از دستورالعمل ها به شیوه «مسیر برداری» کدگشایی می گردند. با این وجود برخی از دستورالعمل های ممیزشناور و SSE می بایست به شیوه زمان بر «مسیر برداری» کدگشایی می شدند. در معماری K8 از واحد‌های «کدگشایی پیچیده» قدرتمندتری بهره برده شد که توانایی کدگشایی تمامی دستورالعمل های SSE و ممیزشناور را به شیوه «مسیر مستقیم» دارا می باشد.

مشابه ویژگی «همجوشی macro-op» اینتل در معماری K8 شرکت AMD وجود ندارد همچنین می توان فرم دیگری از «همجوشی micro-op» را در این معماری یافت، برای اینکه پیچیدگی این مقایسه ها موجب سردرگمی شما نشود در جدول 2 تفاوت‌ های موجود را ترسیم کرده‌ایم :

مقایسه INTEL و ADM

جدول شماره 2

در پردازنده های Athlon ویژگی «همجوشی micro-op» وجود دارد، یک دستورالعمل مشابه دستورالعمل ADD [mem],EAX در گذر از خط لوله پردازنده تنها با یک macro-op بیان می‌شود. دستورالعمل های «بارگذاری» و SSE نیز در معماری Core قابل ترکیب با یکدیگر هستند اما این امکان برای K8 در نظر گرفته نشده و دستورالعمل های SSE توسط دو macro-op مجزا اجرا می شوند.

با توجه به این توضیحات به نظر شما واحدهای کدگشایی Core چگونه با K8 رقابت می کنند؟ شاید بدون دسترسی به اطلاعات بیشتر در مورد سایر بهینه سازی های Core در واحد کدگشایی، نتیجه‌گیری کمی دشوار باشد، با این وجود بر اساس مفروضات می‌توان ایده کلی مقایسه را مطرح کرد. در اکثر وضعیت های موجود معماری Core برتری نسبی در این بخش دارد، این معماری می تواند در هر سیکل ساعت خود 4 تا 5 دستورالعمل x86 (به لطف «همجوشی macro-op» ) را کدگشایی و به داخل خط لوله هدایت کند در حالی که K8 در هر سیکل ساعت تنها 3 دستورالعمل را کدگشایی میکند.

وضعیت هایی که 3 واحد «کدگشایی پیچیده» K8 از 3 واحد «کدگشایی ساده» و یک واحد پیچیده ی Core پیشی می گیرند بسیار اندک است. این اتفاق زمانی رخ خواهد داد که پیچیدگی هر سه دستورالعمل واکشی شده از صف دستورالعمل ها در حدی باشد که توسط واحد‌های «کدگشایی ساده» تعبیه شده در Core نتوان آنها را به micro-op تبدیل کرد.

دسترسی هوشمندانه به حافظه

از زمان «پنتیوم پرو»، پردازنده های x86 توانایی اجرای دستورالعمل ها، خارج از نوبت را پیدا کردند. با این حال به طور میانگین یک سوم دستورالعمل‌ها به سادگی قابلیت اجرای خارج از نوبت را ندارند، این دستورالعمل‌ها همگی از نوع «بارگذاری» هستند، جلو انداختن دستورالعمل‌های «بارگذاری» افزایش عملکرد چشم‌گیری نسبت به بارگذاری داده‌ها در زمانی که به آنها نیاز دارید خواهد داشت. با این کار تاخیرهای متعدد حافظه کاشه سطح 1 و سطح 2 از چشمان پردازنده پهنان خواهند ماند.

تصور این افزایش کارایی بسیار ساده است، فرض کنید یک دستورالعمل ALU در اختیار دارید که نیاز به بخش مشخصی از داده های ذخیره شده در حافظه را دارد اما این بخش داده در حافظه کاشه سطح 1 موجود نباشد، در این صورت پردازنده هنگام آغاز محاسبات باید در انتظار دریافت داده‌های مذکور بماند. اگر عملیات «بارگذاری» چندین سیکل قبل از زمانی که ALU به آن بخش داده نیاز دارد آغاز شود، تاخیر انتقال داده از حافظه کاشه سطح 2 به سطح 1 اهمیت اندکی پیدا خواهد کرد. البته «بارگذاری» خارج از نوبت داده‌ای که قبل از آن در عملیات «ذخیره‌سازی» شرکت کرده مطلوب نیست ، چرا که این عمل خارج از نوبت مقدار قدیمی و بی ارزش داده را بارگذاری می‌کند. به تصویر شماره 2 توجه کنید:

مقایسه دسترسی به حافظه در اینتل

تصویر شماره 2

عملیات بارگذاری Load2 نمی تواند خارج از نوبت اجرا شود، چرا که مقدار آن تا زمانی که عملیات ذخیره سازی Store1 به اتمام نرسیده ارزشمند نیست. تنها زمانی که Store1 به اتمام رسد متغیر Y مقدار صحیحی پیدا خواهد کرد. با این حال هیچ دلیلی برای تاخیر در پیش افتادن عملیات بارگذاری Load4 وجود ندارد، این دستور بارگذاری مستقل از سایر دستورات ذخیره‌سازی پیشین خود است و اجرای خارج از نوبت آن توام با افزایش عملکرد نهایی خواهد بود.

در حال حاضر، پردازنده ها عملیات load4 را تا زمانی که قبل از آن عملیات «ذخیره‌سازی» وجود دارد به تاخیر می‌اندازند، چرا که پردازنده‌های کنونی در شناسایی وابستگی «بارگذاری» و «ذخیره‌سازی» ناتوان بوده و امکان بارگذاری داده غیر ارزشمند در صورت پیشی افتادن «بارگذاری» به وجود خواهد آمد.

در معماری Core برای اولین بار راه‌کاری برای حل این مشکل به نام «آشکارسازی حافظه» (Memory Disambiguation) تدارک دیده شده، در این ویژگی از الگوریتم هوشمندی استفاده شده تا وابستگی دستورالعمل «بارگذاری» را با «ذخیره‌سازی»های پیشین خود مشخص نماید. اجرای خارج از نوبت «بارگذاری»ها افزایش عملکرد زیادی را به همراه خواهد آورد، در برخی از کدهای کوچک محک زنی، اینتل حداکثر 40 درصد افزایش کارایی را گزارش کرده است، اگرچه این میزان افزایش کارایی در برنامه‌های واقعی مشاهده نخواهند شد اما تاثیر غیر قابل انکار و افزایش عملکرد ملموسی به همراه دارد. زیرا همانطور که در ابتدای مقاله به آن اشاره کردیم، دستورالعمل‌های «بارگذاری» حدود یک سوم micro-opهای پردازنده ها در زمان اجرای یک برنامه عمومی را تشکیل می دهند که بارگذاری داده های مطلوب آنها از حافظه کاشه سطح 2 (در حالت بد تر از حافظه اصلی) منجر به کندی اجرای برنامه خواهد شد. اما این ویژگی انعطاف پذیر و نوین معماری Core چگونه با سایر معماری‌ها رقابت می‌کند؟ به جدول شماره (3) توجه کنید:

مقایسه معماری اینتل

جدول شماره 3

در معماری های P6 و P-M تدابیری برای اجرای خارج از دستور «بارگذاری» قبل از سایر «بارگذاری‌»ها اندیشیده شده بود همچنین امکان جلو افتادن دستورالعمل‌های «بارگذاری» از«ذخیره‌سازی»های پیشین خود نیز در صورتی که آدرس داده ذخیره شده شناخته شده و با آدرس «بارگذاری» متفاوت باشد فراهم آمده بود اما در اکثر موارد این آدرس هنوز توسط محاسبه نشده و عملیات «بارگذاری» در موارد اندکی می‌توانست از عملیات «ذخیره‌سازی» جلو بیافتد. برخلاف P6، در معماری K8 تنها امکان پیشی گرفتن «بارگذاری» از عملیات ALU (مانند دستورالعمل ADD) فراهم شده است، به طور کلی «بارگذاری»ها به تنهایی نمی‌توانند خارج از نوبت اجرا شده تا تاثیر تاخیر حافظه کاشه را از میان بردارند از طرف دیگر «بارگذاری»ها نمی توانند از توان اجرایی بالقوه CPU در زمانی که پردازنده در انتظار اتمام عملیات «ذخیره‌سازی»است استفاده کنند. این ها همه به این معنی هستند که پردازنده Athlon 64 در اجرای خارج از نوبت کد‌ها دارای محدودیت‌های متعددی است.

شاید یکی از مهمترین دلایلی که پردازنده های Athlon 64 علیرغم داشتن دسترسی به حافظه سریع تر و منابع محاسباتی عدد صحیح بیشتر، توانایی پیشی گرفتن از پردازنده های هم رده Core Duo خود را در بازی‌ها و محاسبات عدد صحیح را ندارند همین موضوع باشد.

 

اجرای دستورات چندرسانه‌ای

یکی دیگر از نوآوری های معماری Core، قدرت بالای آن در پردازش دستورالعمل های چندرسانه ای SSE است، در معماری های پیشین اینتل تنها یک واحد 128 بیتی برای دستورالعمل های SSE در نظر گرفته شده همچنین در معماری K8 دو واحد SSE وجود دارد، اما در معماری Core سه واحد قدرتمند برای SSE در نظر گرفته شده است که دو واحد آن به صورت موازی‌هم عمل می‌کنند.

در پردازنده های فعلی، دستورالعمل های 128 بیتی SSE طی دو سیکل ساعت اجرا می شدند، که در سیکل اول 64 بیت ابتدایی و در سیکل دوم 64 بیت انتهایی اجرا شده نتیجه نهایی را حاصل می کردند، با اختصاص دادن دو واحد اجرایی موازی در معماری Core به این امر، هم اکنون امکان پردازش دستورالعمل های SSE در یک سیکل کلاک فراهم گشته است، علاوه بر این سازگاری با شیوه های سنتی پردازش SSE نیز توسط واحد غیرموازی سوم در نظر گرفته شده.

تصویر شماره 3

تصویر شماره 3

در تصویر شماره(3) تفاوت عملکرد واحد SSE معماری Core با سایر معماریها نشان داده شده است، حاصل عملیات SSE بر روی دو عملوند X و Y در معماری Core تنها در یک سیکل ساعت محاسبه می گردد در حالی که در سایر معماری ها به دلیل داشتن واحد های SSE کمتر در دو سیکل میسر می‌شود.

با گسترش تعداد و کاربردهای دستورالعمل های SSE در برنامه های چندرسانه ای مانند پردازش ویدیویی، تصویری و صوتی، برنامه های پیچیده رمزنگاری و مهندسی، معماری Core عملکرد غیر قابل مقایسه‌ای نسبت به سایر معماری ‌ها ارائه خوهد کرد.

ادامه...



تاریخ ویرایش مقاله: 25/5/1386


Valid CSS2 Valid XHTML 1.0
طراحی سایت : میکرو رایانه