بلاگ - مقالات

تکنولوژی هایپر تردینگ Hyper Threading چیست ؟ و چه کاربردی دارد؟

تکنولوژی هایپر تردینگ Hyper Threading چیست ؟

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

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

هایپر تردینگ Hyper Threading چیست ؟

هایپر تردینگ Hyper Threading یکی از فناوری‌های مهم شرکت اینتل به شمار می‌رود. این تکنیک باعث می‌شود هر هسته‌ی فیزیکی پردازنده بتواند دو رشته‌ی پردازشی را به صورت همزمان اجرا کند. در واقع، سیستم عامل هر هسته ای که از این قابلیت پشتیبانی می‌کند را به شکل دو هسته مجزا در نظر می‌گیرد. اینتل این فناوری را در سال 2002، همراه با پردازنده‌های پنتیوم 4 معرفی کرد. در آن زمان بیشتر پردازنده‌ها تنها یک هسته داشتند و این روش کمک می‌کرد که عملکرد مشابه پردازنده‌های چند هسته ای شبیه سازی شود و سرعت اجرای چند کار همزمان افزایش پیدا کند. شرکت AMD نیز روشی مشابه معرفی کرده که آن را SMT می‌نامند. هدف اصلی هر دو روش این است که از ظرفیت‌های هر هسته به شکل بهتری استفاده شود تا زمان‌هایی که هسته بیکار است، کاهش پیدا کند.

تکنولوژی هایپر تردینگ به چه صورت است؟

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

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

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

Multithreading چیست؟

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

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

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

کاربرد هایپر تردینگ

فناوری هایپر تردینگ در شرایطی که اجرای همزمان چند برنامه یا پردازش‌های سنگین نیاز باشد، می‌تواند تhثیر قابل توجهی در عملکرد سیستم داشته باشد. این قابلیت بیشتر برای کاربرانی که با چند نرم افزار سنگین به طور همزمان کار می‌کنند یا درگیر پروژه‌های محاسباتی هستند، بسیار مفید است. از کاربردهای مهم Hyper Threading:

انجام وظایف سنگین

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

نرم افزارهای حرفه ای

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

استریمینگ بازی

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

کاربردهای سروری

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

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

هایپر تردینگ Hyper Threading

مزایا و معایب هایپر تردینگ Hyper Threading

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

مزایا

– جرای همزمان چند برنامه بدون کندی:
وقتی چند نرم افزار را به شکل همزمان باز می‌کنید، این فناوری کمک می‌کند سیستم شما روان تر کار کند و بین برنامه‌ها سریع تر جابه‌جا شوید.

– افزایش سرعت در برنامه‌هایی که همزمان چند کار انجام می‌دهند:
نرم افزارهایی مثل ویرایشگر ویدیو، ابزارهای رندر سه بعدی یا شبیه‌ سازی‌های مهندسی، می‌توانند از هایپرتردینگ بیشترین استفاده را ببرند و سرعت اجرا را تا حدود 30 درصد بالا ببرند.

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

افزایش توان پردازش در سرورها:
در سرورهایی که درخواست‌های زیادی را به صورت همزمان دریافت می‌کنند، هایپرتردینگ باعث می‌شود تعداد بیشتری از این درخواست‌ها در زمان کوتاه تری پاسخ داده شوند.

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

معایب

– ضعیف تر بودن از هسته‌های واقعی:
هسته‌های منطقی ساخته شده توسط هایپرتردینگ، توان کامل یک هسته فیزیکی را ندارند. اگر یک پردازنده 4 هسته واقعی داشته باشید، از نظر عملکرد قوی تر از پردازنده ای است که 2 هسته فیزیکی و 4 هسته منطقی دارد.

– وابسته بودن به نرم افزار:
اگر نرم افزاری که اجرا می‌کنید فقط از یک رشته استفاده کند، هایپرتردینگ بی اثر خواهد بود. فقط برنامه‌هایی که از چند رشتگی پشتیبانی می‌کنند، از این فناوری بهره‌مند می‌شوند.

– افزایش جزئی در دما و مصرف برق:
چون هایپرتردینگ باعث فعالیت بیشتر درون پردازنده می‌شود، ممکن است کمی مصرف انرژی و گرمای تولیدی بیشتر شود. این موضوع در لپتاپ‌ها یا سیستم‌های جمع و جور بیشتر به چشم می‌آید.

– قیمت بالاتر در برخی مدل‌ها:
پردازنده‌هایی که از هایپرتردینگ پشتیبانی می‌کنند، گاهی قیمت بیشتری نسبت به مدل‌های مشابه بدون این فناوری دارند. البته این تفاوت قیمت در مدل‌های جدید کمتر شده است.

فعال سازی Hyper Threading

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

اگر بخواهید خودتان این قابلیت را کنترل کنید، می‌توانید از طریق تنظیمات BIOS یا UEFI سیستم این کار را انجام دهید. مراحل کار به این صورت است:

  1. کامپیوتر را ری استارت کنید.
  2. به محض روشن شدن سیستم و پیش از بارگذاری ویندوز، چند بار یکی از کلیدهای Delete، F2، F10، F12 یا Esc را فشار دهید تا وارد تنظیمات BIOS یا UEFI شوید. معمولا نام این کلید در صفحه ابتدایی نمایش داده می‌شود.
  3. داخل تنظیمات، به بخشی مثل CPU Configurationیا Advanced CPU Settingsبروید.
  4. دنبال گزینه ای به نام Hyper-Threading Technology یا Intel(R) Hyper-Threading Technology بگردید. گاهی هم به اسمSMT Mode  نمایش داده می‌شود.
  5. این گزینه را می‌توانید روی “Enabled” (فعال) یا “Disabled” (غیرفعال) تنظیم کنید.
  6. بعد از تغییر، تنظیمات را ذخیره کنیدو سیستم را ری استارت کنید.

خرید هایپر تردینگ Hyper Threading

چرا هایپر تردینگ Hyper Threading بخریم؟

خرید یک پردازنده ای که از تکنولوژی هایپر تردینگ Hyper Threading پشتیبانی می‌کند، به نیازهای کاری و نوع استفاده شما از کامپیوتر بستگی دارد. این قابلیت برای همه ضروری نیست، اما برای بعضی کاربران می‌تواند بسیار ارزشمند باشد. می خواهیم بدانیم که چه کسانی بیشترین بهره را از هایپر تردینگ می‌برند:

1) تولید کنندگان محتوا و کاربران حرفه ای

اگر با نرم افزارهایی مثل Premiere Pro، After Effects، Blender،AutoCAD  یا نرم افزارهای مهندسی و شبیه سازی کار می‌کنید، هایپر تردینگ می‌تواند زمان اجرای پروژه‌ها را به شکل محسوسی کاهش دهد. این برنامه‌ها برای پردازش‌های سنگین طراحی شده اند و از چند رشته به خوبی پشتیبانی می‌کنند.

2) استریمرها و گیمرهای حرفه ای

اگر در کنار بازی کردن، استریم هم انجام شود یا چند برنامه مثل OBS، چت و مرورگر به صورت همزمان باز نگه داشته شود، پردازنده‌های دارای هایپر تردینگ Hyper Threading می‌توانند به تقسیم بهتر بار کاری کمک کنند و از افت فریم جلوگیری کنند.

3) کاربران چند وظیفه ای

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

4) استفاده در مجازی سازی

اگر ماشین‌های مجازی اجرا می‌کنید، هسته‌های منطقی اضافه ای که با Hyper-Threading فعال می‌شوند می‌توانند باعث توزیع بهتر منابع بین این ماشین‌ها شوند و کارایی سیستم را حفظ کنند.

خرید محصولات سرور از مستر اچ پی

اگر به سروری نیاز دارید که قدرت پردازش بالا و عملکرد پایدار داشته باشد، خرید سرور اچ پی انتخاب خوبی برای کسب و کارها و پروژه‌های بزرگ هستند. فروشگاه مستر اچ پی مدل‌های مختلف سرورهای HP را در دسته‌های سرور تاور و رکمونت در اختیار دارد. همچنین قطعات تخصصی و تجهیزات تکمیلی مربوط به این سرورها نیز در این مجموعه موجود است. تیم مستر اچ پی آماده است تا متناسب با نوع فعالیت شما و بودجه در نظر گرفته شده، ترکیب سخت افزاری مناسبی پیشنهاد دهد. برای دریافت راهنمایی بیشتر و اطلاع از موجودی کالا، با شماره 09128352023 و 02191008413 تماس بگیرید.

جمع بندی

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

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

سوالات متداول

  1. آیا هایپر تردینگ Hyper Threading همان دو برابر شدن تعداد هسته‌ها است؟

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

  1. تفاوت اصلی بین هایپر تردینگ و مالتی تردینگ چیست؟

مالتی تردینگ (Multithreading) یک مفهوم نرم افزاری است که به قابلیت یک برنامه برای تقسیم وظایفش به چندین رشته اجرایی مستقل اشاره دارد. هایپر تردینگ Hyper Threading یک فناوری سخت افزاری در پردازنده‌های اینتل است که به یک هسته فیزیکی اجازه می‌دهد دو تا از این رشته‌های نرم افزاری را به طور همزمان پردازش کند. همچنین، هایپر تردینگ از مالتی تردینگ نرم افزارها بهره می‌برد تا کارایی را افزایش دهد.

  1. آیا پردازنده‌های AMD هم هایپر تردینگ دارند؟

پردازنده‌های AMD از فناوری مشابهی (SMT) استفاده می‌کنند که کارکردی بسیار شبیه به هایپر تردینگ اینتل دارد. SMT نیز به هر هسته فیزیکی پردازنده AMD اجازه می‌دهد تا دو رشته را به طور همزمان مدیریت کند و به عنوان دو هسته منطقی عمل نماید.

  1. آیا همیشه باید هایپر تردینگ را فعال نگه دارم؟

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

  1. تعداد هسته‌های فیزیکی بیشتر مهم است یا هایپر تردینگ؟

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *