تالار گفتمان مانشت
زیاد کردن کش - نسخه‌ی قابل چاپ

زیاد کردن کش - H-Arshad - 18 مهر ۱۳۹۳ ۱۲:۲۴ ق.ظ

سلام
اگر از لحاظ اقتصادی و تکنولوژی مشکلی برای زیاد کردن حافظه کش نداشته باشیم.
چرا مقدار زیادش بدتر به ضرر خواهد شد؟ حد این مقدار چطور تعین میشه که به ضرر نباشه مقدارش؟

RE: زیاد کردن کش - Farzamm - 18 مهر ۱۳۹۳ ۱۲:۴۷ ق.ظ

(۱۸ مهر ۱۳۹۳ ۱۲:۲۴ ق.ظ)H-Arshad نوشته شده توسط:  سلام
اگر از لحاظ اقتصادی و تکنولوژی مشکلی برای زیاد کردن حافظه کش نداشته باشیم.
چرا مقدار زیادش بدتر به ضرر خواهد شد؟ حد این مقدار چطور تعین میشه که به ضرر نباشه مقدارش؟

اگر منظورتان از حافظه Cache، حافظه Level 1 Cache باشد، اندازه این حافظه یک نقطه بهینه دارد، چون هر چقدر حجم آن بزرگتر شود متناسباً تأخیر آن نیز افزایش می یابد و با توجه به اینکه هدف از Level 1 cache جبران کندی سرعت حافظه اصلی می باشد، افزایش تأخیر در این Level قابل قبول نمی باشد.
با توجه به اینکه با افزایش حجم Cache تأخیر افزایش می یابد و با کاهش حجم آن miss rate زیاد می شود، پس می توان نقطه بهینه را با توجه به این مقادیر بدست آورد.

RE: زیاد کردن کش - H-Arshad - 18 مهر ۱۳۹۳ ۰۹:۴۲ ق.ظ

سلام
ممنون از پاسخ خوب شما. Heart
چند سوال:
در متن زیر گفته که در سرور ها یا مدرن پی سی ها
۱-آیا همین سیستم های خانگی ما هم جز همین مدرن ها میشه؟
از کش مستقل استفاده میکنه.(تاکید کرده روی مستقل بودن)
۲-کش غیرمستقل چطوری هست مگر؟
و میگه یک کش رو میزارن برای fetch کردن سریع دستورالعمل ها.
۳-دستور العمل ها از کجا برداشته میشن؟ از حافظه؟

(با عرض پوزش از سوال مبتدی. معماری کامپیوتر خیلی ضعیف هستم. متاسفانه استاد چیزی به ما درس نداد)
Most modern desktop and server CPUs have at least three independent caches: an instruction cache to speed up executable instruction fetch, a data cache to speed up data fetch and store, and a translation lookaside buffer (TLB) used to speed up virtual-to-physical address translation for both executable instructions and data. The data cache is usually organized as a hierarchy of more cache levels (L1, L2, etc.; see Multi-level caches).

RE: زیاد کردن کش - Farzamm - 18 مهر ۱۳۹۳ ۰۸:۰۰ ب.ظ

(۱۸ مهر ۱۳۹۳ ۰۹:۴۲ ق.ظ)H-Arshad نوشته شده توسط:  سلام
ممنون از پاسخ خوب شما. Heart
چند سوال:
در متن زیر گفته که در سرور ها یا مدرن پی سی ها
۱-آیا همین سیستم های خانگی ما هم جز همین مدرن ها میشه؟
از کش مستقل استفاده میکنه.(تاکید کرده روی مستقل بودن)
۲-کش غیرمستقل چطوری هست مگر؟
و میگه یک کش رو میزارن برای fetch کردن سریع دستورالعمل ها.
۳-دستور العمل ها از کجا برداشته میشن؟ از حافظه؟

(با عرض پوزش از سوال مبتدی. معماری کامپیوتر خیلی ضعیف هستم. متاسفانه استاد چیزی به ما درس نداد)
Most modern desktop and server CPUs have at least three independent caches: an instruction cache to speed up executable instruction fetch, a data cache to speed up data fetch and store, and a translation lookaside buffer (TLB) used to speed up virtual-to-physical address translation for both executable instructions and data. The data cache is usually organized as a hierarchy of more cache levels (L1, L2, etc.; see Multi-level caches).

پاسخ سوال ۱ شما واضحاً بله هست / کامپیوترهای امروزی با توجه به نوع کاربرد در سه دسته کامپیوترهای همه منظوره، سرورها و سیستم های embedded قرار می گیرند که PCهای امروزی (مدرن) جزء دسته کامپیوترهای همه منظوره قرار دارند.
این متنی که شما از Wikipedia کپی کردید روی مستقل بودن تاکید نکرده است، نمی دونم این تاکید رو از کجاش در آوردید، ولی منظور از Cacheهای مستقل، Cacheهای با اهداف و کاربرد متفاوت می باشد. یک Cache برای دستورات است که باعث بهبود سرعت حافظه دستور استفاده می شود.دیگری cache برای داده ها و آخری TLB است که نقش Cache برای Page Table را دارد.
سوال دوم شما مفهوماً اشتباه است. مثل اینکه که بگیم در یک شرکت سه کارمند مستقل هستند که یکی کارش تایپ نامه هاست، دیگری کارش نظافت است و آخری هم کارش پاسخ به ارباب رجوعه. بعد یکی بیاد بپرسه شما گفتید کارمند مستقل، حالا کارمند غیرمستقل چطوری هست مگر؟ / منظور از کلمه مستقل یعنی کارشون ربطی به هم نداره، از هم مستقلند / سعی کنید متونی که مطالعه می کنید را با دقت بخوانید.
سوال سومتون خیلی سوال خطرناکیه / این سوالتون این مطلب رو که به من القا کرد که شما در درس معماری رو به صورت پایه ای مشکل دارید / این سوال شما یه مفهوم اساسی تو رشته کامپیوتر محسوب میشه / شما با مدل Von Neumann یا مدل Stored Programs آشنایی ندارید؟ این سوال تو درس های دیگه تون مطرح نشده بود؟
من با یه سوال پاسخ شما رو میدم / مگه دستورات جایی به غیر از حافظه می توونند باشند؟
پیشنهاد میکنم فصل اول کتاب Computer Organization & Design نوشته Patterson & Hennessy را حتماً حتماً مطالعه کنید.