تالار گفتمان مانشت

نسخه‌ی کامل: سوال از miss rate در دستورات و بهبود زمان اجرا، سوال آزمون مدرسان
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام
تو این سوال چند تا مشکل دارم

۱/ توی زمان اجرای کامپیوتر فعلی اون + ۱ که گذاشته واسه چیه ؟ آیا همون CPI base هست؟
۲/ توی زمان اجرای حالت الف چرا miss pernalty که ۷۰ بود شد ۱۴۰ ؟
۳/ تو زمان اجرای حالت ب چرا ۷۰ شد ۳۵ ؟
(26 دى 1392 03:47 ب.ظ)masoud67 نوشته شده توسط: [ -> ]سلام
تو این سوال چند تا مشکل دارم

۱/ توی زمان اجرای کامپیوتر فعلی اون + ۱ که گذاشته واسه چیه ؟ آیا همون CPI base هست؟
۲/ توی زمان اجرای حالت الف چرا miss pernalty که ۷۰ بود شد ۱۴۰ ؟
۳/ تو زمان اجرای حالت ب چرا ۷۰ شد ۳۵ ؟

سلام عکس سوال لود نمیشه.فقط عکس جواب لود میشه
(26 دى 1392 05:46 ب.ظ)jahanmanesh نوشته شده توسط: [ -> ]سلام عکس سوال لود نمیشه.فقط عکس جواب لود میشه
دمت گرم تذکر دادی
عکسو دوباره آپ کردم
اینجا هم یه بار دیگه آپ کردم که مطمئن بشم
(26 دى 1392 03:47 ب.ظ)masoud67 نوشته شده توسط: [ -> ]سلام
تو این سوال چند تا مشکل دارم

۱/ توی زمان اجرای کامپیوتر فعلی اون + ۱ که گذاشته واسه چیه ؟ آیا همون CPI base هست؟
۲/ توی زمان اجرای حالت الف چرا miss pernalty که ۷۰ بود شد ۱۴۰ ؟
۳/ تو زمان اجرای حالت ب چرا ۷۰ شد ۳۵ ؟

سلام خواهش میکنم.
و اما جواب سوالت. اره اون ۱ برای cpi هست که کلا برای هر دستور یه کلاک نیاز داریم و برای اون درصدهاییم که گفته چون میس داریم کلاکشونو حساب کردیم تا کلاک کل برنامه در بیاد.

جواب سوال دومت، توو قسمت الف، وقتی میگه سرعت پردازنده دوبرابر میشه،یعنی چی؟یعنی کلاک ریتش ۲ برابر میشه،و اگه تعریف miss penalty رو یادت بیاد،گفتیم که یعنی،مدت زمانی که cpu باید بیکار بمونه تا از حافظه اطلاعات گرفته بشه درسته؟ خب در حالت عادی با سرعت عادی پردازنده باید برای ۷۰ کلاک صبر کنه ولی حالا که سرعتش ۲ برابر شده،خب یعنی تعداد کلا بر ثانیش ۲ برابر شده پس در نتیجه باید 2برابر قبل وقتش تلف شه تا از حافظه داده بگیرع دیگه،پس باید ۱۴۰ کلاک منتظر بمونه؟ منظورمو متوجه شدی؟ نتیجه گیری، در حالت عادی پردازنده فرض کن ۷۰۰ کلاک بر ثانیه فرکانسشه،پس طبق گفتش باید ۷۰ کلاک صبر کنه اطلاعاتو از حافظه بخونه، ولی حالا سرعتش شده ۱۴۰۰ یعنی دویرابر،ولی سرعت دستیابی به حافظه تغییر نکرده پس پردازنده دوبرابر کلاک میزنه توو اون miss penalty

و در اخر سوال اخرتم طبق گفته هی بالام فک کنم جوابشو گرفته باشی،میگه زمان دستیابی به حافظه اصلی ۴ برابر شده، پس ۷۰/۴ که میشه ۱۷.۵... حالا یا سوال اشتباه،یا اینکه قسمت ب، ادامه ی قسمت الف است،یعنی تغییرات قسمت ب به الف اضافه میشه.

به هر حال یادت باشه توو این سوالا غلط زیاد هستش،مثلا اینکه write through استفاده شه یا write back, کش استفاده شده یا خیر،حافظه اصلی مستقیم به پردازنده داده میده یا خیر...
بهر حال شما اگه ۷۰/۴ هم میکردی،بازم سرعت قسمت ب بیشتر بود یعنی فرقی توو جوابت نمیکرد.
من سرِ آزمون اینجوری حل کردم درست در اومد... ببین به کارت میاد.

Data miss cycle= 0.04*0.3*70 = 0.84
Ins.miss cycle = 0.015*70 = 1.05

total stall = 1.89

حالا گفته (الف) سرعت پردازنده و کش ۲ برابر... یعنی زمانی که Cpu باید تا مموری بره نصف میشه(سی پی یومون خفن تر شده):
همون محاسبات بالا با ۳۵ رو انجام بده.میشه ۰/۹۴ که با توجه به ۱/۸۹/۰/۹۴ میفهمیم سرعت ۲/۰۱ برابر شده.

قسمت ب میگه یه حافظه با سرعت ۴ برابر سریعتر میزاریم که یعنی total stall تقسیم بر ۴ میشه یعنی ۰/۴۷

و در نهایت برای قسمت ب 1.89/0.47 = 4.02 پس ب سریعتر میباشــــــد Smile
(26 دى 1392 07:32 ب.ظ)jahanmanesh نوشته شده توسط: [ -> ]و اگه تعریف miss penalty رو یادت بیاد،گفتیم که یعنی،مدت زمانی که cpu باید بیکار بمونه تا از حافظه اطلاعات گرفته بشه درسته؟ خب در حالت عادی با سرعت عادی پردازنده باید برای ۷۰ کلاک صبر کنه ولی حالا که سرعتش ۲ برابر شده،خب یعنی تعداد کلا بر ثانیش ۲ برابر شده پس در نتیجه باید ۲برابر قبل وقتش تلف شه تا از حافظه داده بگیرع دیگه،پس باید ۱۴۰ کلاک منتظر بمونه؟
بسیار عالی ، متوجه شدم
ولی یه سوال دیگه ، اینجا که گفته سرعت کش دوبرابر میشه تاثیری در محاسبات نداره؟ یعنی اونجا که نوشته T/2 بخاطر دوبرابر شدن سرعت کشه یا بخاطر cpu هست
فرمول دستیابی به حافظه رو توو ذهنت بیار،
برای هر ادرس حافظه، یه بار باید تو کش ببینیم اگر بود که فقط زمان کش رو تحمل میکنیم اگر نبود،زمان کش + زمان رفتن به حافظه اصلیو تحمل میکنیم.در نتیجه زمان کش در miss penalty وقتی تاثیر داره کهcpu مستقیم نبونه از حافظه داده بگیره، یعنی وقتی پردازنده یا ادرسیو میخواد که توو کش نیس باید از حافظه بیارش روی کش و از روو کش بخونه.ولی اگر مستقیم به حافظه سترسی داشته باشه،دیگه نیاز نیس که منتظر نوشتن دادها روی کش بشه و مستقیم اونو از حافظه میگیره...
حالا با توجه به حلی که سوال داشته و روال معمول این سوال ها پردازنده معمولا به حافظه دسترسی مستقیم داره یعنی زمان کش توی miss penalty تاثیری نداره توی این نوع سوالا.مگر اینکه گفته که پردازنده مستقیم دسترسی نداره در نتیجه باید زمان کش رو هم بررسی کنی.
نتیجه گیری که میکنیم اینه که به صورت عادی وقتی miss penalty داد،همون حافظه اصلیو در نظر بگیر فقط و به کش کاری نداشته باش مگر اینکه توضیح اضافی (غیر از نکات گیج کننده و احرافی سوال) وجود داشت

Sent from my GT-N5100 using Tapatalk HD
میگم مدرسان ازمون مهندسی نرم افزارش چندنفر شرکت کننده داره؟

Sent from my GT-N5100 using Tapatalk HD
لینک مرجع