اگر به چند سال قبل برگردیم، کامپیوترها فقط یک پردازنده ساده داشتند که تمام کارها را به تنهایی انجام میداد. اما حجم نرمافزارها، بازیها و پردازشهای امروزی بهقدری زیاد شده که یک هسته تنها نمیتواند از پس همه چیز بر بیاید. به همین دلیل پردازندهها چندهستهای شدند و بعد از آن، شرکت اینتل برای افزایش بازدهی همین هستهها، فناوری Hyper Threading را معرفی کرد. Hyper-Threading فناوری اختصاصی اینتل است که یک هسته فیزیکی را به دو هسته منطقی تبدیل میکند تا پردازنده بتواند دو Thread را همزمان اجرا کرده و سرعت اجرای کارهای موازی را افزایش دهد.
در ظاهر شاید عجیب باشد که چطور یک هسته میتواند نقش دو هسته را بازی کند، اما واقعیت این است که بسیاری از زمانهای پردازشی CPU بدون استفاده میمانند. Hyper-Threading همین زمانهای آزاد را هدف میگیرد و به هسته اجازه میدهد دو جریان کاری (Thread) را به طور همزمان پیش ببرد. نتیجه؟ اجرای روانتر برنامهها، عملکرد بهتر در کارهای چندوظیفهای، و تجربه سریعتر هنگام کار با نرمافزارهای سنگین یا بازیهایی که از چند Thread پشتیبانی میکنند.
در این مقاله از مجله اینترنتی تیوان سرور به بررسی تکنولوژی Hyper Threading و تفاوت آن با Multithreading میپردازیم؛ پس تا انتهای این مطلب همراه ما باشید.
CPU، هسته و Thread یعنی چه؟
پیش از آن که بخواهیم فناوری Hyper Threading را بررسی کنیم، نیاز است که چند اصطلاح پایه را بشناسید.
CPU چیست؟
CPU یا پردازنده همان «مغز» سیستم است؛ جایی که دستورها را دریافت میکند، آنها را تفسیر میکند و بعد اجرا میکند. هر کاری که در کامپیوتر انجام میدهیم، از باز کردن یک فایل Word گرفته تا اجرای یک بازی سنگین، در نهایت باید از CPU عبور کند.
هسته (Core) چیست؟
هر هسته مثل یک پردازنده کوچک مستقل عمل میکند و میتواند یک کار را جداگانه انجام دهد. مثلاً:
- پردازنده 2 هستهای → دو کار همزمان
- پردازنده 4 هستهای → چهار کار همزمان
هرچه تعداد هستهها بیشتر باشد، CPU توان بیشتری برای انجام کارهای همزمان دارد.
Thread چیست؟
وقتی یک برنامه اجرا میشود، لازم نیست تمام کارهایش را به صورت پشت سر هم انجام دهد. برنامه میتواند کارهایش را به بخشهای کوچکتری تقسیم کند که به هر بخش میگوییم Thread. شاید با مثال زیر درک بهتری از مفهوم Thread پیدا کنید:
- CPU = شرکت
- Core = کارمند
- Thread = کارهای مختلفی که به هر کارمند داده میشود
یک کارمند ممکن است یک کار انجام دهد، یا چند کار کوچکتر که همزمان در دست انجام دارد.
تفاوت هسته فیزیکی و هسته منطقی
- هسته فیزیکی همان واحد واقعی پردازش داخل CPU است.
- هسته منطقی نتیجه فناوری Hyper Threading است؛ یعنی CPU یک هسته را طوری شبیهسازی میکند که سیستمعامل آن را مثل «دو هسته جداگانه» ببیند.
بدون Hyper Threading، هر هسته فقط یک Thread را اجرا میکند. اما وقتی تکنولوژی Hyper Threading فعال باشد، هر هسته میتواند دو Thread را همزمان پیش ببرد و از زمانهای بلااستفاده خود بهترین استفاده را بکند.
اگر بخواهیم ساده بیان کنیم: Hyper-Threading به یک کارمند واقعی، دو میز کار میدهد تا بتواند دو کار را همزمان جلو ببرد.
Multithreading چیست؟
حالا باید با مفهوم Multithreading آشنا شویم؛ وقتی یک برنامه اجرا میشود، همیشه لازم نیست همه کارهایش را پشت سر هم انجام دهد. بسیاری از نرمافزارها طوری طراحی میشوند که بتوانند کارشان را به بخشهای کوچکتری تقسیم کنند.
هر یک از این بخشها یک Thread است. این Threadها توسط سیستمعامل و CPU اجرا میشوند. به این فرایند که یک برنامه چند Thread تولید کند و این Threadها همزمان روی هستههای مختلف پردازش شوند، Multithreading میگوییم.
حالا چرا Multithreading مهم است؟
فرض کنید یک پروژه بزرگ دارید. اگر تمام کارها را یک نفر انجام دهد، زمان زیادی لازم میشود. اما اگر این پروژه بین چند نفر تقسیم شود، سرعت کار به شکل چشمگیری افزایش پیدا میکند. Multithreading هم همین ایده را وارد دنیای نرمافزار میکند: تقسیم کار برای اجرای سریعتر.
Multithreading یک قابلیت نرمافزاری است؛ یعنی برنامهها Thread میسازند.
فناوری Hyper Threading یک قابلیت سختافزاری است؛ یعنی CPU طوری طراحی شده که بتواند چند Thread را روی یک هسته فیزیکی، همزمان و با کارایی بهتر اجرا کند.
به زبان خیلی ساده: نرمافزار Thread تولید میکند؛ Hyper-Threading کمک میکند همزمانتر و سریعتر اجرا شوند.
فناوری Hyper Threading چیست؟

Hyper-Threading یک فناوری سختافزاری است که توسط شرکت اینتل معرفی شد تا بازده یک هسته فیزیکی را افزایش دهد. این فناوری باعث میشود یک هسته فیزیکی مثل دو هسته مستقل رفتار کند و حجم بیشتری از کارها را همزمان پردازش کند.
ایده اصلی فناوری Hyper-Threading از کجا شکل گرفت؟
ایده اصلی فناوری Hyper-Threading از آنجایی شکل گرفت که مهندسان اینتل متوجه شدند هستههای پردازنده همیشه آنطور که باید، مشغول کار نیستند. در بسیاری از لحظات، هسته CPU منتظر دریافت داده از حافظه یا پاسخ یک ورودی خارجی میماند و این زمانهای بلااستفاده عملا هدر میروند.
بنابراین اینتل تصمیم گرفت این زمانهای خالی را به کار بگیرد. در حالت عادی، یک هسته فقط توان اجرای یک Thread را دارد، اما با فعال بودن Hyper-Threading، همان هسته میتواند دو Thread را به شکل پشتسرهم و حتی همزمان پردازش کند. نتیجه این است که CPU کمتر معطل میماند و میتواند حجم بیشتری از کار را در همان زمان انجام دهد.
Hyper-Threading چگونه کار میکند؟
وقتی فناوری Hyper-Threading روی یک پردازنده فعال است، هر هسته فیزیکی به دو هسته منطقی (Logical Core) تقسیم میشود. این به معنی «دو پردازنده واقعی» نیست، بلکه یعنی هسته میتواند دو جریان کاری (دو Thread) را همزمان مدیریت کند.
- CPU برای هر هسته فیزیکی دو مسیر اجرا در نظر میگیرد.
- سیستمعامل وقتی به این CPU نگاه میکند، بهجای 4 هسته، 8 هسته میبیند
- حالا برنامهها میتوانند بهجای یک Thread، دو Thread روی هر هسته بفرستند.
- هسته فیزیکی بین این دو Thread بهصورت هوشمند جابهجا میشود؛ یعنی هر وقت یکی از Threadها منتظر داده از حافظه بود، هسته به سراغ Thread دیگر میرود تا وقتش تلف نشود.
| پارامتر فنی | Multithreading (MT) | Hyper-Threading (HT) |
|---|---|---|
| سطح اجرای فناوری | سطح نرمافزار و سیستمعامل (Software-level) | سطح سختافزار در معماری هسته (Hardware-level SMT) |
| مسئول ایجاد Thread | نرمافزار + سیستمعامل (Scheduler) | هیچ Thread جدیدی ایجاد نمیکند؛ فقط آنها را موازی اجرا میکند |
| مکانیزم اجرا | Scheduler سیستمعامل Threadها را بین هستههای فیزیکی توزیع میکند | پردازنده برای هر هسته دو Execution Context فراهم میکند |
| رفتار در سطح Core | هر هسته فقط ۱ Thread را در یک لحظه اجرا میکند | هر هسته میتواند ۲ Thread را بهصورت موازی مدیریت کند |
| منابع مشترک داخل هسته | هیچ اشتراک داخلی وجود ندارد؛ منابع هر Thread بر اساس زمانبندی اختصاص مییابد | Threadها منابع داخلی هسته (ALU, Cache, Pipeline) را مشترک استفاده میکنند |
| تأثیر روی Pipeline | Pipeline فقط یک Thread را در یک چرخه پیش میبرد | Pipeline میتواند دستورهای دو Thread را interleave کند |
| تأثیر روی IPC (دستور در هر چرخه) | IPC وابسته به طراحی برنامه است | افزایش IPC با استفاده از زمانهای Idle Pipeline |
| خروجی برای سیستمعامل | تعداد Threadها به تناسب بار کاری تعریف میشود | سیستمعامل هر هسته را ۲ Logical Processor میبیند |
| نوع تکنولوژی | Thread-level Parallelism (TLP) در نرمافزار | Simultaneous Multithreading (SMT) در معماری CPU |
| افزایش عملکرد | بسته به نوع برنامه (تا چند برابر) | بهطور میانگین ۱۵٪ تا ۳۰٪ افزایش کارایی |
| محدودیتها | وابسته به طراحی نرمافزار | رقابت Threadها برای منابع مشترک هسته، افزایش latency در برخی workloadها |
فناوری Hyper Threading چه مزایایی دارد؟
- افزایش اجرای همزمان وظایف (Parallelism بیشتر): هر هسته میتواند دو Thread را مدیریت کند، بنابراین CPU کمتر بیکار میماند.
- استفاده بهتر از منابع داخلی هسته: Pipeline، واحدهای محاسباتی و Cache کمتر بلااستفاده میمانند.
- افزایش بازده سیستم بدون افزودن هسته فیزیکی: نوعی «بهبود عملکرد کمهزینه» نسبت به اضافهکردن هسته واقعی است.
- در برنامههایی که چند Thread همزمان اجرا میکنند (مثل رندرینگ، تدوین و شبیهسازی)، هسته میتواند بار کاری بیشتری را در یک چرخه زمانی پردازش کند.
- سیستم در زمان اجرای چند برنامه همزمان کمتر دچار مکث یا کندی میشود.
- زمانی که یک Thread منتظر پاسخ حافظه است، Thread دوم میتواند وارد Pipeline شود و کار پردازشی را ادامه دهد.
برای تکمیل اطلاعات خود، پیشنهاد میکنیم مطلب «حافظه کش چیست» را مطالعه کنید.
و در پایان…
فناوری Hyper-Threading یکی از مهمترین نوآوریهای اینتل برای افزایش بازده پردازندههاست. این فناوری به هر هسته فیزیکی امکان میدهد دو Thread را همزمان مدیریت کند و بهجای بیکار ماندن در زمانهای انتظار، کار بیشتری انجام دهد. نتیجه این است که سیستم در کارهای چندوظیفهای، برنامههای چندتردی و پردازشهای سنگین، عملکرد روانتر و سریعتری ارائه میدهد. البته Hyper-Threading جایگزین هسته فیزیکی نیست، اما روشی هوشمندانه برای افزایش کارایی بدون اضافهکردن هسته واقعی محسوب میشود.
این فناوری بهعنوان یک قابلیت مهم در پردازندههای اینتل، راهی کمهزینه و مؤثر برای افزایش بهرهوری CPU سرور و اجرای همزمان وظایف بیشتر است. امیدواریم با خواندن این مطلب بهطور کامل با تکنولوژی Hyper Threading آشنا شده باشید. اگر سوال یا تجربهای درباره Hyper-Threading دارید، خوشحال میشویم در بخش نظرات با ما در میان بگذارید.
سرور HPE G10
سرور HPE G10 Plus










