پیکسلر | شبکه اجتماعی برنامه نویسان

بررسی ویژگی Hyper-Threading بر روی پردازنده های سرور اچ پی

ysorkh.m 2 سال پیش

بررسی ویژگی Hyper-Threading بر روی پردازنده های سرور اچ پی

 

تقریباً تمام پردازنده­ های امروزی چند هسته ­ای هستند: آنها شامل چندین واحد پردازشی هستند که می توانند همزمان کارهای مختلف را انجام دهند.

مولتی تردینگ:

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

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

تعریف هایپر تردینگ:

فناوری هایپر تردینگ توسط اینتل ارائه می­شود که نوآوری سخت افزاری است که اجازه می­دهد تا بیش از یک رشته بر روی هر هسته اجرا شود. موضوعات بیشتر به این معنی است که کارهای بیشتری می­توان به طور موازی انجام داد. این ویژگی از معماری پردازنده IA-32 اینتل است.

نحوه کار هایپر تردینگ به این صورت است که وقتی این فناوری فعال است، پردازنده مرکزی دو زمینه اجرا را در هر هسته فیزیکی نشان می­دهد. این بدان معنی است که یک هسته فیزیکی اکنون مانند دو هسته منطقی کار می­کند که می­توانند رشته­ های مختلف نرم افزار را مدیریت کنند. به عنوان مثال پردازنده ده هسته ­ای Intel® Core ™ i9-10900K ، با فعال شدن هایپر تردینگ دارای 20 رشته است.

دو هسته منطقی می­توانند با کارایی بیشتری نسبت به یک هسته سنتی تک رشته ای کار کنند. تکنولوژی هایپر تردینگ با بهره گیری از زمان بیکاری که هسته در گذشته منتظر تکمیل سایر وظایف است، توان پردازنده را بهبود می بخشد (تا 30٪ در برنامه­ های سرور 4).

از نظر سیستم عامل ، هر هسته CPU سیلیکونی واقعی دو هسته به نظر می­رسد، بنابراین عملکرد هر یک از آنها را جداگانه تغذیه می­کند. از آنجا که بسیاری از کارهایی که پردازنده مرکزی انجام می­دهد برای حداکثر کارکردن آن کافی نیست، هایپر تردینگ مطمئن می­شود که از این تراشه حداکثر بهره برداری می­شود.  اکثر سیستم­ عامل­ های امروزی (مانند ویندوز و لینوکس) قادر به تقسیم بار کاری خود در بین چندین پردازنده هستند (به این روش پردازش متقارن یا SMP گفته می­شود)، پس سیستم عامل به سادگی عمل می­کند.

اینتل خاطر نشان می­کند که کد موجود به درستی در پردازنده ای با هایپر تردینگ اجرا می شود اما برخی از تغییرات کد نسبتاً ساده برای بدست آوردن سود مطلوب توصیه می شود.

 

نحوه فعال کردن هایپر تردینگ:

به طور دیفالت فعال است، اما می­توان با تنظیم Hyper-Threading Technology  در Enable یا Disable  از محیط BIOS خاموش و روشن کرد.

مزایای هایپر تردینگ:

با استفاده از هایپر تردینگ، یک رایانه شخصی می­تواند اطلاعات بیشتری را در مدت زمان کمتری پردازش کرده و کارهای پس زمینه بیشتری را بدون اختلال انجام دهد. در شرایط مناسب، این فناوری به هسته ­های پردازنده اجازه می­دهد تا دو کار را همزمان انجام دهند. چند وظیفه­ ای، پخش کننده­ های صوتی و حرفه ­ای که برنامه های بسیار پر رشته ­ای را اجرا می­کنند، می­توانند با آپدیت کردن به یک لپ تاپ مخصوص بازی(gaming) یا CPU دسکتاپ گیمینگ با تکنولوژی هایپر تردینگ اینتل، مانند جدیدترین پردازنده Intel® Core ™ i9، تجربه محاسبات خود را تقویت کنند.

نکات مهم برای انتخاب ریزپردازنده:

اگر باید دو پردازنده را انتخاب کنید که بتوانند تعداد رشته ­های یکسانی را اداره کنند اما تعداد هسته ­های آنها یکسان نیست، آن پردازنده مرکزی که هسته­ های فیزیکی بیشتری دارد را انتخاب کنید.

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

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

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

به طور سنتی عملکردهایی مانند رندر سه بعدی CPU ، رمزگذاری ویدئو و دستکاری عکس به همان اندازه که پردازنده ضعیف شما می­تواند مشکل ایجاد کند. به عبارت دیگر، بسیاری از کاربردهای حرفه ای مدرن، گرسنه thread هستند. به همین دلیل هایپر تردینگ به پردازنده ­های سطح حرفه­ای مانند i7 و بالاتر محدود شده است.

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

0 دیدگاه
برای قرار دادن دیدگاه وارد شوید