بخشی از مقاله

چکیده

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

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

.1 مقدمه

در کامپیوتر های مدرن امروزی CMPS1 ها که ترکیبی از بازده مناسب و تاخیر و سربار هستند، توسط سخت افزاری قدرتمند انسجام خود را حفظ می کنند، از این رو روش های پیاده سازی و پروتکل های دسترسی بر عواملی همچون مقیاس پذیری، زمان اجرا، و انرژی مصرفی تاثیر زیادی دارد.[1] با توجه به کلیات مطالعات انجام شده سهم بیشتری دسترسی ها به داده های اشتراکی بوده[2]، که این میزان اشتراک داده ها به برنامه نویس بستگی دارد، ولی به صورت کلی بیشتر دسترسی ها اشتراکی بوده است.به صورت کلی استفاده نا بجا و کورکورانه از منابع باعث ایجاد سرر بار و کار اضافه و به دنبال آن تاخیر و زمان تلف شده می شود.

مطالعات اخیر بیشتر بر روی افزایش سخت افزار تمرکز کرده است، که به صورت مختصر برخی مطالعات بیان شده است. [3] هاردوالس و دوستان و [3] لی و دوستان برروی حافظه های حافظه نهانNUCA2 مطالعاتی به عمل آورده اند، [4,5] کیم و دوستان استفاده از پروتکل TOKEN BASED، و یا [1,2] گوستا و دوستان که باعث کاهش فشار بر روی دایرکتوری حافظه نهان شدند.

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

الف- کامپایلر[4,5,7,8]
ب- سیستم عامل - [1,3,6] - OS

ج-[9,10]TLB1

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

.2 حافظه نهان های مجزا برای داده های اختصاصی و اشتراکی

با توجه به توضیحات بخش قبل و شکل1 یک پردازنده 16 هسته ای از دو حافظه نهان L1P و L1S در هر هسته استفاده شده است،L1P وظیفه ذخیره اطلاعات اختصاصی و اشتراکی فقط خواندنی را بر عهده دارد که هیچ ارتباطی با بیرون هسته خود ندارد، در سمت دیگر حافظه نهان L1S اطلاعات اشتراکی در آن قرار می گیرد و این ارتباط از طریق یک شیکه میان ارتباطی2 و یک عبور دهنده مسیر استفاده میکند.

حافظه نهان L2 هم یک حافظه نهان در سطح دوم که شبیه به حافظه نهان های NUCA عمل می کند و تمامی اطلاعات اشتراکی و اختصاصی را در خود جا می دهد. نکته اصلی بعد از توضیح ساختار مشخص است که باید از یک روش و مکانیزم برای آنکه ماهیت داده ها مشخص شود مورد نیاز است. با مشخص شدن ماهیت داده ها، مشخص می شود که از کدوم بانک حافظه نهان باید استفاده شود، مشکل پیش آمده برای دسترسی به حافظه نهان اشتراکی L1S به دلیل ایجاد تاخیر بدلیل وجود 8 بیت در ارسال و در عوض برگرداندن 16 بیت که شامل 8 بیت های کنترلی و 8 بیت داده است.

استفاده از طراحی حافظه نهان مجزا باعث بدست آمدن برخی فواید از جمله نیاز نداشتن به کد تایید1 و کاهش پیچیدگی، حجم و پیچیدگی کم باعث ایجاد مقیاس پذیری، حذف دایرکتوری و کاهش نرخ miss2، [17,18] کاهش فشار بر روی حافظه نهان اختصاصی، کاهش حجم حافظه نهان سطح 1 و افزایش سرعت، طراحی حافظه نهان های مختلف اختصاصی و اشتراکی می شود.

.3 مکانیزم های طبقه بندی

به صورت کلی طبقه بندی بر پایه دایرکتوری [11,13,19,20] با وجود دقت بالایی که دارد برای طرح پیشنهادی در این مقاله مناسب نبوده و دلیل این نامناسبی نیاز به مشخص شدن ماهیت داده ها قبل از دسترسی است. با این حال استفاده کردن از [9,10]TLB و در حالت Paging کار را کمی مناسب می کند ولی به دلیل پیچدگی و هزینه بالا نا مناسب است. - با هدف اصلی مطابقت ندارد - .

-3-1 سیستم عامل[1,3,6]

در این مکانیزم از یک بیت اضافی استفاده شده است و در جدول و Paging در حافظه نشان می دهد ماهیت داده از نوع اختصاصی یا اشتراکی است، بیت اضافی به صورت P/S نشان داده می شود. در این فرایند در هر بار دسترسی کد شناسه ID هسته با داده مقایسه می شود که در صورت تطبیق نشان دهنده اختصاصی بودن داده است در غیر این صورت داده داخل جدول به اشتراکی تغییر ماهیت می دهد.

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید