نظرات (14)

 فرکانس پردازنده‌ها نسبت به دهه 90 میلادی، دو، سه و حتی چهار برابر شده‌اند و اگر همه‌چیز خوب پیش رفته بود، امروز ما از پردازنده‌هایی با فرکانس 10 گیگاهرتز استفاده می‌کردیم، اما چرا این اتفاق نیفتاد و فرکانس پردازنده ها با سرعت لاک‌پشتی افزایش می‌یابد؟

همان‌طور که احتمالاً حدس می‌زنید، گرما یک مشکل جدی است، فرکانس بالاتر به تولید گرمای بیشتر می‌انجامد و به همین دلیل اورکلاکرهای حرفه‌ای برای دست یابی به فرکانس‌های بالا سراغ خنک سازی با دمای زیر صفر می‌روند. اما اینتل می‌گوید مشکل اصلی گرما نیست. ویکتوریا جزلینا از اینتل، به جنبه ذاتی محدودیت‌ها در پردازنده‌ها پرداخته و می‌گوید چرا ما پردازنده 10 گیگاهرتزی نداریم.

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

دستورالعمل ها در پردازنده در چندین گام اجرا می شوند که نمودار زیر آن را نشان می دهد:

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

همان‌طور که در نمودار بالا مشاهده می‌کنید، واحد محاسباتی اول، گام اول از دستورالعمل نخست را در بازه زمانی t1 اجرا می‌کند. با اجرای بازه t2 گام اول به پایان رسیده و گام دوم بر روی واحد محاسباتی دوم آغاز می‌شود. حالا واحد محاسباتی اول آزاد است و آماده اجرای گام اول دستورالعمل بعدی است. در طول بازه t4، گام‌های مختلف هر چهار دستورالعمل اجرا شده‌اند.

در اصل نمودار بالا نحوه اجرای موازی دستورالعمل‌ها در پردازنده‌های Superscalar را نشان می‌دهد، این پردازنده‌ها می‌توانند به ازای هر سیگنال ساعت (کلاک، سیکل)، چندین دستورالعمل را اجرا کنند اما  همان‌طور که مشاهده می‌کنید، اجرای  قطعات دستورالعمل‌ها به سیکل‌های بعدی می‌کشد، به گفته اینتل مشکل آنجاست اگر طول سیکل‌ها کوتاه‌تر باشد (در نتیجه فرکانس بالاتر)، لزوماً به افزایش سرعت اجرای دستورالعمل‌ها کمک نمی‌کند، چراکه اجرای قطعات دستورالعمل‌ها به زمان مشخصی نیاز دارد و با کوتاه کردن سیکل (افزایش فرکانس)، اتمام اجرای یک دستورالعمل به سیکل‌های بیشتری می‌کشد.

«اما این موضوع چه ارتباطی با فرکانس پردازنده دارد؟ در واقع ممکن است مدت زمان لازم برای اجرای مراحل مختلف متفاوت باشد. در عین حال گام‌های مختلف همان دستورالعمل در طول سیکل‌های مختلف اجرا می‌شود. طول سیکل [و پیرو آن فرکانس] پردازنده باید متناسب با طولانی‌ترین گام باشد»

همان‌طور که نمودار بالا نشان می‌دهد، اگر طول سیکل (وابسته به فرکانس) کوتاه‌تر از مدت زمان لازم برای اجرای طولانی‌ترین گام باشد، اجرای آن به سیکل‌های بیشتری نیاز دارد که به افزایش تأخیر منجر می‌شود. ممکن است بگویید این کار باعث افزایش سرعت گام‌های کوتاه‌تر می‌شود و این مثبت است، اما اگر به نمودار زیر دقت کنید، علی رغم اجرای سریع‌تر گام‌های کوتاه، تمامی سیکل‌های بعد از 4 با تأخیر اجرا می‌شوند.

«فرض بگیرید اجرای طولانی‌ترین گام به 500 پیکوثانیه نیاز دارد و طول سیگنال ساعت در یک پردازنده 2 گیگاهرتزی همین مقدار است، حالا اگر فرکانس همان پردازنده افزایش یابد و طول سیکل نصف (250 پیکو ثانیه) شود، طولانی‌ترین گام برای اجرا به دو سیکل (500 پیکو ثانیه زمان) نیاز دارد که در عمل به افزایش سرعت نمی‌انجامد و صرفاً باعث افزایش پیچیدگی و گرما می‌شود»

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

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

افزایش فرکانس پردازنده ها «حماقت» است!
اما به افزایش فرکانس و حتی اورکلاکینگ می‌رسیم، با افزایش ولتاژ هسته پردازنده، سرعت سویچینگ ترانزیستورها بالا می‌رود و تمامی گام‌ها کوتاه‌تر شده و در نتیجه آن می‌توان فرکانس را افزایش داد. در ظاهر که عالی به نظر می‌رسد اما یک مشکل اساسی با تولید گرما وجود دارد. فرمول زیر به طور ساده تلفات توان در پردازنده (عمدتاً به صورت گرما) را نشان می‌دهد:

P ~ Cdyn*V2*f

P: توان، Cdyn: ظرفیت خازنی دینامیک، V: ولتاژ، f: فرکانس

اما اگر نمی‌دانید ظرفیت خازنی دینامیک چیست، هیچ نگران نباشید، چراکه اینجا مهم‌ترین عامل ولتاژ است و به توان 2 می‌رسد.

تاثیر اورکلاک کردن به 5 گیگاهرتز بر مصرف انرژی

واقعیت بسیار بدتر از آن چیزی است که تصور می‌کنید. همان‌طور که پیش‌تر اشاره شد، این اعمال اختلاف پتانسیل (ولتاژ) است که ترانزیستورها را به کار می‌اندازد. می‌توان گفت ترانزیستور به نوعی کار یک کلید قطع و وصل را انجام می‌دهد. یک ترانزیستور برای سویچ کردن به انباشت بار (اشباع شدن) نیاز دارد. مدت زمان لازم برای اشباع در ترانزیستور به شدت جریان وابسته است و با افزایش شدت جریان، مدت زمان لازم برای آن کاهش می‌یابد. همان‌طور که احتمالاً می دانید خود شدت جریان نیز به ولتاژ وابسته است. طبق آنچه که گفته شد، سرعت سویچ کردن ترانزیستورها به ولتاژ وابسته است. حالا احتمالاً متوجه شده‌اید که فرکانس پردازنده متناسب با سرعت سویچ کردن ترانزیستور می‌تواند افزایش بیابد که خود به ولتاژ وابسته است. همه آنچه که گفته شد را می توان در قالب فرمول های زیر بیان کرد:

f ~ V وP ~ Cdyn*V3

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

آنچه که گفته شد نشان می‌دهد افزایش فرکانس بهترین و کارآمدترین راه ممکن برای افزایش کارایی پردازنده‌ها نیست و به همین دلیل سازندگان پردازنده به جای افزایش فرکانس، کارایی پردازنده‌ها را از طریق راه های دیگری چون افزایش تعداد هسته‌ها و پیاده سازی تکنیک‌های بهینه سازی بالا می‌برند.

نظر خود را بنویسید...
شما مهمان هستید ( ثبت نام؟ )
ارسال نظر بدون عضویت در سایت
در حال بارگذاری نظرات... به‌روزرسانی نظرات پس از 00:00.
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    با سلام و خسته نباشید
    آقای خبات منظور از ظرفیت خازن دینامیکی چیه؟
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    بسیار عالی و مفید بود.;)
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    آقای خبات بالاخره جواب من رو ندادید.
    برای افزایش سرعت سویچ ترانزیستور راهکار دیگه ای به غیر از افزایش ولتاژ وجود داره؟
    افزایش طول pipeline یا (کوچک کردن گامها که شما گفتید) در هسته Prescott انجام شد و به 31 گام هم رسید اما بدلیل ناکارآمدی و ایراداتی که بوجود آمد دوباره طول pipeline رو کاهش داد که در حال حاضر و در چند نسل اخیر تعداد گامها بیشتر از ۱۹ مرحله نیست
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    هیچ کاری غیرممکن نیست. اگه حرفهای اینتل راست باشه پس باید در ساختار و عملکرد پردازنده ها از بن تغییر ایجاد بشه. مگه نه؟
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    از آقای خبات بابت این مطلب مفید و روان تشکر میکنم.:cool:yes
    نکته کلیدی که عنوان شد این بود که در صورتی افزایش فرکانس موثر خواهد بود که سرعت سویچ ترانزیستور هم افزایش پیدا کنه.
    از نویسنده محترم میخوام بپرسم که در حال حاضر به غیر از افزایش ولتاژ چه راهکارهای دیگری برای افزایش سوچینگ ترانزیستور وجود داره؟؟
    • این نظر هنوز منتشر نشده است.
      · حدود 8 سال قبل
      سلام دوست گرامی
      مسله صرفاً سرعت سویچینگ ترانزیسوتور نیست، عوامل محدود کننده بیشتر در سطح طراحی پردازنده است.
      از نظر تئوری در سطح طراحی پردازنده راه های دیگه ای هم وجود داره که بشه بدون اثرات منفی فرکانس رو بالا، از جمله تقسیم کردن گام های طولانی به گام های کوتاه تر تا در سیکل های کوتاه اجرا بشه. اما مشکل اونجاست که برخی از این گام ها وابستگی دارند و خیلی دشوار هست که به گام های کوچک تر تقسیم بشن.
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    درود
    دمت گرم خبات جان، اما چجوریه amd تونست در یه برهه ای با اون لیتوگرافی قدیمیش نسبت به الان فرکانس قابل قبولی رو کسب کنه یا حتی اینتل می تونه خودش رو به 5 هم نزدیک کنه... البته داغی اینها بماند اما کار نشد نداره... اینا تنبلن حال ندارن مخشونو بکار بگیرن چسبیدن فقط به لیتوگرافی کمتر، همین amd اومد با تف گردازنده به هم چسبوندن باقلوا میده دست مردم هیشکی باورش نمیشد بشه، اینم راه حل داره نشد نداره یا کمبود امکانات هست یا هزینه ی تحقیقات بالا که نمیصرفه. ?
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    @خبات
    همین که Clock Tick رو "سیکل ساعت" ترجمه میکنی نشان از دانش وو سواد فراوان شماست.
    به این میگن ترجمه گوگل ترنسلیتی
    • این نظر هنوز منتشر نشده است.
      · حدود 8 سال قبل
      دوست عزیز
      این یک مطلب خرد هست ، Clock Tick در عمل میشه سیکل ساعت که همون ثانیه میشه. سیکل یعنی چرخه. در اینجا ساعت نه به ساعت نشان دهنده زمان، بلکه تایمینگ/زمان سنجی اشاره دارد.

      اگر به این موضوع علاقمند هستید در مورد اسیلاتور و سیگنال پالس مطالعه کنید و بی اطلاعی خودتون رو به بی سوادی دیگران تفسیر نکنید.
      موفق باشید.
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    ای کاش شهر سخت افزار با این همه سابقه میتونست آدم های با سواد تر و با علاقه با کار تر که حداقل 4 کلاس زبان انگیلسی هم خوندن به کار میگرفت

    این ترجمه از ترجمه گوگل تنسلیت هم بدتر و مضحک تره
    و غیر قابل فهم برای عموم
    • این نظر هنوز منتشر نشده است.
      · حدود 8 سال قبل
      سلام دوست گرامی
      از اینکه مطلب براتون سودمند نبوده ناخرسندیم و این مسله رو در نظر میگیریم اما:

      بنده خودم مربی آموزشگاه بودم، مشکلی که اشاره کردین بسیار شایع هست و به دید غلط نسبت به کامپیوتر برمیگرده.
      بسیارند کسانی که توانایی کار با آفیس و ویندوز و برنامه ها رو اشتباهاً به داشتن دانش کامپیوتر تفسیر میکنند.
      و باز هم بسیارند کسانی که از روی علاقه به ویندوز و برنامه ها میرن کامپیوتر میخونن یهو با مشتی مباحث تئوری روبرو میشن که هیچی ازش نمیدونن.
      علوم کامپیوتر بیشتر مباحث تئوری و غالباً گنگ و نامفهوم برای عموم است، از این رو نمیتونه برای همه سومند باشه.
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    به زبان ساده میشه گفت افزایش فرکانس راه مناسبی نیست و ضررش بیشتر از سودشه ولی از طرفی افزایش ipc و کاهش لیتوگرافی باعث کوتاهتر شدن مسیر الکترون ها در مواد سیلیکون ای (کوچکتر میشه لذا مسیر کم میشه) راهکار فعلی برای افزایش قدرت و بهینه موندن هم روی دما و مصرف
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    :whistle:whistle:whistle
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    پس هنوز هم مطالبی که بتونن مخ رو به سوت کشیدن وادار کنن پیدا میشه :cry
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    خوب بنابراین باید با کاهش لیتوگرافی سرعت پردازنده افزایش پیدا کنه چون ترانزیستورها کوچکتر میشن و زمان کمتری برای انباشت الکترون نیاز هست بنابرین زودتر سوییچ میشن و سرعت پردازش زیاد میشه
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    داداش زیر سوم ابتدایی حرف بزنید ما هم بفهمیم
  • این نظر هنوز منتشر نشده است.
    · حدود 8 سال قبل
    مطلب فوق سنگینی بود ...
    سوپراسکالر با پایپ لاین تفاوت داره؟ چون نمودارش دقیقاً مثل پایپ لاینه.
    • این نظر هنوز منتشر نشده است.
      · حدود 8 سال قبل
      سلام دوست گرامی
      Pipeline که سرجای خودشه.
      Superscalar رو میشه اینطور تعریف کرد که پردازنده چندتا Pipeline دستور العمل مجزا داره.