این مقاله در تاریخ 11 اردیبهشت 1400 نوشته و در تاریخ 7 مهر 1400 مورد بازبینی قرار گرفته است. |
تکنولوژی HyperThreading چیست:
امروزه تقریباً تمام پردازنده های موجود در بازار، چند هسته ای هستند: آنها شامل چندین واحد پردازشی هستند که می توانند همزمان کارهای مختلفی را انجام دهند. اما حال مزایای اضافه شدن این هسته ها به پردازنده ها چیست؟ چه تفاوتی میان برنامه های Single Threaded و MultiThreaded وجود دارد و اصلاً تکنولوژی Hyper Threading چیست؟
تکنولوژی HyperThreading در واقع اصطلاحی است که اینتل استفاده میکند و همان تکنولوژی ای است که AMD آن را Simultaneous MultiThreading یا SMT می نامد. در این تکنولوژی، CPU هسته فیزیکی خود را به دو هسته مجازی که Thread نامیده میشود، تقسیم میکند. لازم به ذکر است این تکنولوژی در پردازنده های قدیمی موجود نیست.
با استفاده از HyperThreading CPU، کامپیوتر و یا هر دستگاه دیگری که CPU در آن قرار می گیرد، می تواند اطلاعات بیشتری را در مدت زمان کمتری پردازش کرده و کارهای بیشتری را بدون اختلال انجام دهد. در شرایط مناسب، این فناوری به هسته های پردازنده اجازه می دهد تا دو کار را همزمان انجام دهند.
CPU های مدرن امروزی، هم چند هسته دارند و هم ازتکنولوژی Hyper Threading استفاده میکنند. مثلا در CPU دو هستهای با کمک Hyper Threading به صورت ۴ هسته برای سیستم عامل ارائه میشود و به همین صورت ۴ هسته به صورت ۸ هسته. Hyper Threading جایگزینی برای هستههای اضافی نیست اما کارایی پردازنده دو هستهای با وجود Hyper Threading بیشتر از کارایی پردازنده دو هستهای بدون وجود Hyper Threading است.
برای مثال تکنولوژي “Hyper Threading” به پردازنده اين امکان را ميدهد که در هر لحظه، دو بسته اطلاعاتي را پردازش کند. اين بدان معناست که اگر پردازنده شما اين قابليت را داشته باشد، هر هسته پردازشي قرار گرفته روي آن ميتواند در يک لحظه دو دستورالعمل (thread) را پردازش کند. در واقع با اين تکنولوژي سيستمعامل به هر هسته پردازشي به چشم يک دو هستهاي نگاه ميکند که قابليت پردازش همزمان دو دستورالعمل را دارد.
نکته : در حالت کلی این تکنولوژی می تواند تا 30% در صد سرعت پردازش داده ها افزایش دهد و این مقدار می تواند در پردازنده قوی تر بیشتر از این هم باشد.
جهت آشنایی بیشتر با تکنولوژی HyperThreading ویدئو زیر را مشاهده نمایید:
کدام پردازنده ها از تکنولوژی HyperThreading بهره می برند:
تکنولوژی Hyper Threading در سری پردازنده های Intel سری Atom، Core i7 و برخی مدلهای Core i5 از این تکنولوژی بهره می برند.
نکته : علاوه بر اینکه پردازنده اینتل باید دارای ویژگی هایپر تردینگ باشد سیستم عامل شما و بایوس مادربرد نیز باید دارای این ویژگی باشد.
مزایای تکنولوژی HyperThreading:
ـ بهبود پشتيباني از کدهاي Multi -Thread
ـ امکان اجراي هم زمان چندين thread
ـ بهبود زمان پاسخگويي و عکس العمل پردازنده به دستور العملهاي دريافتي
با افزایش تعداد هسته آیا باز هم به تکنولوژی HyperThreading نیاز هست؟
افزايش تعداد هستههاي فیزیکی در پردازنده يکي از راههاي افزايش قدرت پردازنده در اجراي هم زمان چندين دستورالعمل است ولي بايد توجه داشت که افزايش تعداد هستههاي فيزيکي، اندازه پردازنده و مصرف انرژي را افزايش ميدهد. ولي Hyper Threading چنين عيبي را ندارد چرا که تنها راه را براي استفاده بهينه واحدهاي پردازشي پردازنده باز ميکند. اين تکنولوژي واحدهاي پردازشي خالي را با دستورالعملها پر کرده و در واقع به پردازنده اين امکان را ميدهد که از حداکثر توان پردازشي خود استفاده کند.
نکته : تکنولوژی Hyper Threading تعداد هسته ها را به صورت فیزیکی افزایش نمی دهد.
معایب تکنولوژی HyperThreading:
HT Technology عملکرد پردازنده یا هسته های یک پردازنده خاص را افزایش نمی دهد. این یک فن آوری خاص سخت افزاری است که یک هسته واحد را قادر می سازد تا چندین جریان داده را به هم پیوند دهد.
ـ Hyper-Threading می تواند باعث شود تا CPU گرمای بیشتری ایجاد کند. برای جلوگیری از تخریب عملکرد سخت افزار و گرم شدن بیش از حد، به سیستم های خنک کننده نیاز است.
ـ بهبود عملکردها اساساً وابسته به برنامه هستند. علاوه بر این، اگر Hyper-Threading از طریق BIOS غیرفعال شود، در هر زمان نمی تواند توسط کاربر فعال یا غیرفعال شود. مشابه ویژگیTurbo Boost ، CPU تحت برخی شرایط این ویژگی را فعال می کند.
تفاوت HyperThreading، MultiThreading و SuperThreading:
- Multi-Threading چیست؟
قابلیت Multi-Threading به کامپیوتری گفته می شود که سخت افزارهای تشکیل دهنده آن دارای قابلیت اجرای چندین Thread را دارند. در واقع زمانیکه صحبت از Multi-Threading می شود باید سیستم های چند پردازشی یا Multiprocessing System ها مثل سیستم های چند هسته ای مانند یک CPU که دارای چندین هسته درون خود است را تصور کنیم.
- Super-threading چیست؟
قابلیت Super-Threading در واقع چیزی شبیه به Multi-threading است که امکان اجرای چندین Thread مختلف بر روی یک CPU بدون اینکه واقعا آنها را در یک بازه زمانی و بصورت همزمان اجرا کند را می دهد. در واقع Super-Threading شبیه Multi-threading اما با این تفاوت دیگه Multi-threading جریان داده را به صورت همزمان منتقل می کند.
در واقع در Super-Threading سیستم به دنبال چرخه یا Cycle های بلااستفاده CPU می گردد و به محض مشاهده آنها Thread دیگری که در صف اجرا بوده است را وارد می کند تا اجرا شود.
- Hyper-Threading چیست؟
در این تکنولوژی پردازنده های اینتل هر هسته واقعی و فیزیکی را به دو هسته مجازی تبدیل می کنند. به عنوان مثال پردازنده ای که دارای دو هسته فیزیکی است با استفاده از این تکنولوژی شامل چهار هسته مجازی خواهد شد.
به پایان این مقاله رسیدیم امیدواریم با مطالعه این مقاله و مشاهده ویدئوی آموزشی آن با اصطلاح Hyper-Threading آشنایی پیدا کرده باشید.