(۲۶ دى ۱۳۹۲ ۰۳:۴۷ ب.ظ)masoud67 نوشته شده توسط: سلام
تو این سوال چند تا مشکل دارم
۱/ توی زمان اجرای کامپیوتر فعلی اون + ۱ که گذاشته واسه چیه ؟ آیا همون CPI base هست؟
۲/ توی زمان اجرای حالت الف چرا miss pernalty که ۷۰ بود شد ۱۴۰ ؟
۳/ تو زمان اجرای حالت ب چرا ۷۰ شد ۳۵ ؟
سلام خواهش میکنم.
و اما جواب سوالت. اره اون ۱ برای cpi هست که کلا برای هر دستور یه کلاک نیاز داریم و برای اون درصدهاییم که گفته چون میس داریم کلاکشونو حساب کردیم تا کلاک کل برنامه در بیاد.
جواب سوال دومت، توو قسمت الف، وقتی میگه سرعت پردازنده دوبرابر میشه،یعنی چی؟یعنی کلاک ریتش ۲ برابر میشه،و اگه تعریف miss penalty رو یادت بیاد،گفتیم که یعنی،مدت زمانی که cpu باید بیکار بمونه تا از حافظه اطلاعات گرفته بشه درسته؟ خب در حالت عادی با سرعت عادی پردازنده باید برای ۷۰ کلاک صبر کنه ولی حالا که سرعتش ۲ برابر شده،خب یعنی تعداد کلا بر ثانیش ۲ برابر شده پس در نتیجه باید ۲برابر قبل وقتش تلف شه تا از حافظه داده بگیرع دیگه،پس باید ۱۴۰ کلاک منتظر بمونه؟ منظورمو متوجه شدی؟ نتیجه گیری، در حالت عادی پردازنده فرض کن ۷۰۰ کلاک بر ثانیه فرکانسشه،پس طبق گفتش باید ۷۰ کلاک صبر کنه اطلاعاتو از حافظه بخونه، ولی حالا سرعتش شده ۱۴۰۰ یعنی دویرابر،ولی سرعت دستیابی به حافظه تغییر نکرده پس پردازنده دوبرابر کلاک میزنه توو اون miss penalty
و در اخر سوال اخرتم طبق گفته هی بالام فک کنم جوابشو گرفته باشی،میگه زمان دستیابی به حافظه اصلی ۴ برابر شده، پس ۷۰/۴ که میشه ۱۷.۵... حالا یا سوال اشتباه،یا اینکه قسمت ب، ادامه ی قسمت الف است،یعنی تغییرات قسمت ب به الف اضافه میشه.
به هر حال یادت باشه توو این سوالا غلط زیاد هستش،مثلا اینکه write through استفاده شه یا write back, کش استفاده شده یا خیر،حافظه اصلی مستقیم به پردازنده داده میده یا خیر...
بهر حال شما اگه ۷۰/۴ هم میکردی،بازم سرعت قسمت ب بیشتر بود یعنی فرقی توو جوابت نمیکرد.