Hyperthreading در پردازنده چیست و چگونه کار می‌کند؟

به نقل از دیجیکالا:

CPU Hyperthreading

اگر به دنبال خرید یک سیستم جدید هستید، احتمالا با پردازنده‌هایی با اصطلاح Hyperthreading روبه‌رو شده‌اید. اما تکنولوژی Hyperthreading چیست و چه تأثیری بر عملکرد پردازنده دارد؟

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

پردازنده چیست؟

Hyperthreading پردازنده

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

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

به زبان هر چقدر تعداد هسته‌ها بیشتر باشد بهتر است. اما این موضوع چه ارتباطی با تکنولوژی Hyperthreading دارد؟

Hyperthreading پردازنده چیست؟

Hyperthreading پردازنده

پردازنده‌های معمولی در هر زمان فقط قادر به اجرای یک دستورالعمل هستند که به این نوع پردازنده‌ها single-threaded گفته می‌شود. در حالت عادی و single thread دستورالعمل ۲ باید منتظر اجرای دستورالعمل ۱ بماند تا نوبت آن شود و این یعنی کاهش سرعت و عملکرد پردازنده.

با بهره‌گیری از تکنولوژی Hyperthreading (که AMD برای این قابلیت نام Simultaneous Multithreading را انتخاب کرده)، هر هسته‌ی پردازنده تبدیل به دو هسته‌ی مجازی می‌شود که از آن‌ها تحت عنوان Thread یاد می‌کنند. این دو هسته‌ی مجازی قادر به پردازش هم‌زمان دستورالعمل‌ها هستند (در صورتی که برنامه اجازه این کار را بدهد) و این یعنی فناوری لازم در واقع تعداد هسته‌های یک پردازنده را دو برابر می‌کند.

بنابراین اگر پردازنده‌ی ۴ هسته‌ای شما دارای قابلیت Hyperthreading باشد، شما می‌توانید از ۸ هسته‌ی مجازی بهره ببرید. البته عملکرد این هسته‌ها دقیقا برابر با عملکرد یک پردازنده‌ی دارای ۸ هسته‌ی فیزیکی نیست که در ادامه بیشتر به این موضوع می‌پردازیم.

تکنولوژی Hyperthreading چگونه کار می‌کند؟

Hyperthreading پردازنده

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

همان‌طور که پیش‌تر گفتیم، هسته‌های حقیقی توان بیشتری نسبت به هسته‌های مجازی ارائه می‌دهند. زیرا هر کدام از هسته‌های فیزیکی معماری خاص خود را دارند و از قدرت و کارایی بیشتر برخوردار هستند. به زبان ساده، یک پردازنده ۴ هسته‌ای با قابلیت Hyperthreading توان بیشتری نسبت به پردازنده ۴ هسته‌ای معمولی دارد ولی یک پردازنده‌ی ۸ هسته‌ای از هر دوی آن‌ها قدرتمندتر است.

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

آیا مزایای Hyperthreading ارزش استفاده از این تکنولوژی را دارد؟

Hyperthreading پردازنده

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

بنابراین اگر از برنامه‌های سنگین (مانند برنامه‌های مربوط به تدوین فیلم یا رندر سه‌بعدی) استفاده می‌کنید، این برنامه‌ها با بهره‌گیری از Hyperthreading قادر به افزایش سرعت پردازش هستند. اما اگر یک کاربر معمولی هستید که عمدتا برای کارهایی مانند تایپ کردند یا وب‌گردی از سیستم خود بهره می‌برید، این قابلیت سرعت سیستم را چندان تغییر نمی‌دهد. علاوه بر این باید خاطرنشان کنیم پردازنده‌های دارای این قابلیت معمولا قیمت بالاتری دارند.

معایب Hyperthreading

پردازنده‌

پردازنده‌های دارای این قابلیت انرژی بیشتری نسبت به پردازنده‌های بدون این مشخصه مصرف می‌کنند. بنابراین اگر می‌بینید چندان به این قابلیت نیاز ندارید، این افزایش مصرف انرژی یک هزینه‌ی بیهوده خواهد بود. از طرف دیگر همان‌طور که گفتیم این پردازنده‌ها قیمت بالاتری دارند و به همین خاطر بین نسل یازدهم پردازنده‌های اینتل، فقط گزینه‌های i9 و مدل‌های گران‌تر از این مشخصه بهره می‌برند.

آیا باید یک پردازنده‌ی دارای قابلیت Hyperthreading بخرید؟

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

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

سخن آخر

پردازنده‌

در نهایت خلاصه‌ی نکات اصلی مطرح شده از این قرار است؛

  • تکنولوژی Hyperthreading هر کدام از هسته‌های فیزیکی را به دو هسته‌ی مجازی تبدیل می‌کند.
  • هسته‌های فیزیکی توان بیشتری نسبت به هسته‌های مجازی دارند.
  • این تکنولوژی بیشتر مناسب برنامه‌های سنگین است و برای برنامه‌های روزمره چندان کاربردی ندارد.
  • Hyperthreading احتمالا در آینده‌ی نزدیک بیشتر استفاده می‌شود.

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

منبع: Make Use Of