مفاهیم Hyper-Threading و Simultaneous MultiThreading چه معنایی دارند؟ دو فناوری مدرن از Intel و AMD!
فناوریهای Hyper-Threading (HT) و Simultaneous MultiThreading (SMT) از دو شرکت اینتل (Intel) و ای ام دی (AMD)، در نسلهای اخیر پردازندههای این دو شرکت شناخته شده ابداع و به کاربران معرفی شدند.
بیایید مطلب را با بحث اصلیمان شروع کنیم و سپس به سراغ موضوعات مرتبط برویم؛ HT و SMT چیستند و چه تفاوتی میان آنها وجود دارد؟
Hyper-Threading و Simultaneous MultiThreading چه معنایی دارند؟
فناوری Hyper-Threading شرکت اینتل به صورت کلی از منابع پردازنده به صورت مؤثرتری استفاده میکند و این امکان را به وجود میآورد که رشتههای متعددی روی یک هسته مشغول کار شوند. این فناوری که یکی از ویژگیهای عملکرد پردازندهها در نسلهای جدید به شمار میرود، توان عملیاتی CPU را ارتقا میدهد.
همانطور که میدانید، نرم افزارهای مختلف در دوره مدرن، برای کارکرد سریع و مؤثر به تعداد رشته بالایی نیاز دارند و همچنین کاربران برای انجام چند عملیات روی رایانه شخصی خود، نیازمند این رشتههای متعدد هستند. با فناوری Hyper-Threading شرکت اینتل، محقق شدن چنین شرایطی آسان میشود.
با این حال، توجه داشته باشید که H-T یا S MT به خوبی داشتن هستههای فیزیکی بیشتر نیستند اما با پایین نگه داشتن هزینهها، سرعت کار CPU را افزایش میدهند.
برای درک بهتر مفاهیم HT و SMT، شاید بهتر باشد نحوه کار یک پردازنده را به صورت پایهای و مقدماتی بدانید. هر کار و عملیاتی که روی رایانه شخصی شما انجام میشود (مانند چک کردن ایمیل)، به CPU شما نیاز دارد تا یک سری دستورها را پردازش کند. یک هسته پردازنده معمولی، میتواند در آن واحد، یک دستور را انجام دهد.
با این که همین پردازنده معمولی قابلیت پردازش میلیونها دستور در ثانیه را دارد، اما از انجام آنها به صورت همزمان، ناتوان است و این پروسه پردازش را مقداری کند میسازد. توجه داشته باشید که دستورهای فهرست شده برای پردازنده، همگی از یک جنس و یک جور نیستند و دستورهای مختلف، توسط قسمتهای مختلفی از یک پردازنده پردازش میشوند.
HT و SMT وارد عمل میشوند!
این دقیقاً همان جایی است که این فناوریهای HT و SMT وارد عمل میشوند. با HT و SMT، سیستم عامل شما (مثلاً ویندوز) به یک هسته CPU به چشم دو هسته فیزیکی و واقعی نگاه میکند. با این حال، این هستههای حیاتی برای سیستم در واقع دو هسته مجازی یا Virtual هستند.
این هستهها اجازه میدهند که عملیات مختلف به قسمتهای کوچکتری شکسته و خُرد شده و این پردازشها به شکل مؤثرتری توسط هسته CPU انجام شوند. مادامی که هسته CPU برای هر کار از یک نوع داده استفاده نکند، اطلاعات و دستورها میتوانند تقسیم شوند، در صف قرار بگیرند و با استفاده از فناوریهای HT و SMT به سرعت پردازش گردند.
کدی که برای فناوری SMT بهینه شده باشد، میتواند با سرعت دوبرابر نسبت به یک هسته CPU معمولی کار کند و اجرا شود. با این حال، کدی که برای SMT بهینه نشده باشد، ممکن است سریعتر از حالت معمولی اجرا نشود یا حتی کندتر کار کند. منظور از کد، همان نرم افزاری (اپلیکیشن یا بازی) است که به صورت مستقیم با پردازنده در ارتباط هستند. تمام توضیحاتی که داده شد، تقریباً برای هر دو فناوری صدق میکند.
برای به دست آوردن درک بهتر نسبت به فناوری Hyper-Threading، دعوت میکنیم ویدیوی کوتاه و ۴۰ ثانیهای زیر را که رسماً توسط شرکت اینتل منتشر شده، تماشا نمایید:
دو فناوری به صورت کلی هیچ تفاوتی با یکدیگر ندارند! هر دو مفهوم در واقع توصیف کننده یک فناوری هستند که هر هسته از پردازنده را به دو قسمت تقسیم نموده و با این روش کمک میکنند تا کارهای چند رشتهای یا Multi-Thread با سرعت بالاتری انجام شوند.
خوب یا بد؟
بدون شک فناوریهای HT و SMT برای تمام کاربران، مخصوصاً کسانی که از سیستم خود به عنوان ابزار تولید محتوا استفاده میکنند، خوب و مفید هستند. با این حال، توجه داشته باشید که نرم افزار یا حتی بازی ویدیویی مورد نظر شما، باید برای بهره گیری از فناوریهای HT و SMT بهینه شده باشد. همچنین به صورت کلی، این مفاهیم تأثیری به اندازه هستههای فیزیکی و واقعی ندارند و تنها نمونه کپی شده از هسته پردازنده هستند.
از آنجایی که تنها قسمتی از هسته CPU کپی میشود، وجود HT و SMT نسبت به داشتن پردازندهای با هسته و رشته واقعی بیشتر، کاهش هزینهها را دربردارد. به عنوان مثال، اگر سرعت هر هسته را برابر در نظر بگیریم، یک پردازنده ۴ هستهای با SMT (هشت رشته) میتواند تقریباً برابر با یک پردازنده ۸ هستهای معمولی کار کند و حدوداً به سطح عملکرد پردازنده قویتر برسد.
فناوریهای HT و SMT به صورت کلی مفاهیم پیچیده و عجیب و غریبی نیستند، بلکه تکنیکهای سخت افزاری کاربردی و جالبی هستند که دو غول سازنده CPU، یعنی اینتل و AMD آنها را ابداع کرده و مرتباً توسعه میدهند. SMT و HT نه تنها به صورت کلی هزینهها را کاهش میدهند، بلکه عملکرد هر پردازنده را مؤثرتر میسازند.