توان مصرفی واقعی پردازنده چیست و چه تفاوتی با توان طراحی حرارتی یا TDP دارد

ساخت وبلاگ

توان,, مصرفی, پردازنده, را باید ازجمله عوامل مهم در عملکرد آن دانست؛ اما چرا اعداد و ارقام اعلام شده ی سازنده با اعداد و ارقام واقعی, به دست آمده متفاوت است؟

توان مصرفی که همواره یکی از دغدغه های اصلی سازندگان تراشه بوده، به تازگی در بازار کامپیوترهای شخصی مدنظر کاربران نیز قرار گرفته است. به عنوان مثال، کاربران توان مصرفی پردازنده های هشت هسته ای اینتل را بین ۱۵۰ تا ۱۸۰ وات گزارش می کنند؛ درحالی که اینتل شاخص TDP این پردازنده ها را ۹۵ وات اعلام کرده است. در این مقاله، قصد داریم دلیل این تفاوت در میزان توان مصرفی گزارش شده را توضیح دهیم.

شاخص توان طراحی, حرارتی, (Thermal Design Power)

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

شاخصتوان طراحی حرارتی(TDP)به همین قدرت خنک کاری سیستم خنک کننده بستگی دارد. با استناد به این وابستگی، اکثر کاربران معمولا به اشتباه میزانTDP پردازنده را با حداکثر توان مصرفی آن برابر می دانند؛ زیرا میزان گرمایی که باید از پردازنده خارج شود، برابر با مقدار توانی است که پردازنده برای انجام پردازش مصرف کرده است. این درحالی است که در این تعریف، مشخصه ی TDPدرواقع حداقل گرمایی است که سیستم خنک کننده باید خارج کند تا پردازنده بتواند همواره به عملکرد خود در فرکانس پایه ادامه دهد. البته مقداری از گرما ازطریق اتصالات فلزی پردازنده به مادربرد از آن خارج میlrm; شود؛ ازاین رو، قدرت خنک کننده ی استفاده شده عملا کمتر از میزان TDP پردازنده خواهد بود. بااین حال در بیشتر مواقع، توان مصرفی در حالت پردازش در فرکانس پایه و TDP با یکدیگر برابر درنظر گرفته می شوند.

کاربران معمولا به اشتباه میزان TDP پردازنده را با حداکثر توان مصرفی آن برابر می دانند

برای توضیح بیشتر مفهوم عبارت مذکور باید گفت اگر براساس تصور این اشتباه، حداکثر توان مصرفی پردازنده ها به میزان شاخص TDPآن ها محدود می شد، مشاهده ی عملکردی مانند نمودار زیر از پردازنده های پرقدرت چندهسته ای دورازانتظار نبود. همان طورکه از تصویر پیداست، پردازنده ای که بدون محدودیت می تواند تا ۱۸۰ وات توان برای پردازش در زمان کوتاه تری مصرف کند، با محدودکردن حداکثر توان مصرفی خود به میزانTDPباعث کاهش درخورتوجه قدرت پردازش خود می شود.

توان ثابت پردازنده

در سال های گذشته، تولیدکنندگان برای تمامی پردازنده های خود عملکرد در یک فرکانس پایه را به ازای مصرف توانی مشخص تضمین می کنند که همان TDP است. به عنوان مثال، درباره ی پردازندهIntelCore i7-8700 65W، اینتل فقط زمانی که پردازنده در فرکانس پایه ۳.۲ گیگاهرتز کار کند، توان مصرفی ۶۵ وات یا کمتر را تضمین می کند و هیچ تضمینی درباره ی عملکرد این پردازنده در فرکانس های بالاتر از ۳.۲ گیگاهرتزو توان مصرفی بیشتر از ۶۵ وات ندارد.

اینتل در پردازنده های خود علاوه بر فرکانس پایه، فرکانس پردازش در حالت Turbo Boost را نیز معرفی می کند. برای نمونه، هر هسته ی پردازنده Core i7-8700علاوه بر پردازش در فرکانس پایه ی ۳.۲ گیگاهرتز، در حالت توربوی تک هسته ای قدرت پردازش در فرکانس ۴.۷گیگاهرتزی و در حالتی که تمامی هسته ها درحالت توربو فعال باشند، قدرت پردازش در فرکانس ۴.۳ گیگاهرتز نیز دارند. درباره ی دلیل اینکه چرا فرکانس در حالت فعالیت تمام هسته ها پایین تر از حالت فعالیت فقط یک هسته است، کمی پایین تر توضیح خواهیم داد. این پردازنده مشخصا برای پردازش در فرکانس توربو، درمقایسه با فرکانس پایه، احتیاج به مصرفانرژیبسیار بیشتری ازTDPمحاسبه شده برای آن دارد؛ بنابراین، گرمای بسیار بیشتری نیز تولید می کند. ازاین رو، سیستم خنک کننده و منبع تغذیه (پاور) ۶۵واتی به کاررفته در این پردازنده برای خنک کاری و تأمین انرژی پردازنده دیگر در حالت توربو مناسب نخواهند بود و برای امکان پردازش مداوم در حالت توربو به خنک کننده و نیز پاور قوی ترنیاز است.

سازندگان پردازنده این واقعیت را با کابران خود در میان نمی گذارند که برای عملکرد مطلوب پردازنده در حالت توربو احتیاج به پاور و خنک کننده قوی تر است

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

حالا ممکن است این سؤال پیش بیاید که پس بااین حساب، TDP مفهوم بی خاصیتی است؟ اگر مفهوم خاصی ندارد؛ پس چرا اخیرا به دغدغه ی تولیدکنندگان تراشه تبدیل شده است؟ در دهه ی گذشته، با اینکه مفهوم TDP تفاوت زیادی نکرده؛ اما طریقه ی استفاده ی پردازنده ها از انرژی تغییر کرده است. در گذشته، پردازنده های چهارهسته ای TDP با توان ۹۵ وات، حتی در حالت توربو به دلیل تعداد کم هسته ها و فرکانس پردازش به نسبت پایین تر، حداکثر توان مصرفی ۵۰ وات داشتند. باوجوداین، امروزه با افزایش تعداد هسته های پردازنده ها بدون افزایش TDPهسته های آن ها، بسیاری از پردازنده های شش و هشت هسته ای با فرکانس های توربو بیشتر از ۴ گیگاهرتز، در پردازش های سنگین توان مصرفی بالاتر ازTDP خود دارند.

شاخص های مؤثر در تعیین میزان توان مصرفی پردازنده

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

برای توضیح ساده تر این مفهوم، سه مشخصه ی PL1 (سطح توان 1) و PL2 (سطح توان 2) و Tau (ضریب زمانی) را درباره ی توان مصرفی پردازنده ها درنظر بگیرید. PL1 میزان توان مصرفی پردازنده در حالت پایدار و برای زمان های طولانی است. بنابراین، می توان گفت PL1 معمولا برابر با TDP پردازنده است. پس، اگر TDP پردازنده ۸۰ وات است، PL1 آن نیز ۸۰ وات خواهد بود.

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

Tauمتغیر زمان است و حداکثر مدت زمانی را تعیین می کند که پردازنده می تواند در حالت توانPL2 قرار گیرد؛ قبل از آنکه مجبور باشد به حالت PL1 بازگردد. دقت کنید مقدار Tau به میزان توان مصرفی یا دمای پردازنده وابسته نیست؛ چون بنابر تعریف، وقتی دمای پردازنده به حداکثر میزان مجاز خود رسید، برای کاهش دما ولتاژ ورودی خود و درنتیجه، فرکانس پردازشی را به شدت کاهش می دهد و در آن حالت، به دلیل پردازش در فرکانس هایی بسیار پایین تر از فرکانس پایه یا توربو مقادیر PL1 و PL2دیگر معنایی ندارند.

رابطه بین شاخص های توان مصرفی پردازنده

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

اگر پردازنده درحال پردازش فقط یک زیربرنامه (حالت تک ریسمانی یا single-thread) باشد، احتیاج به یک هسته دارد که در حالت توربوی خود کار می کند؛ اما به دلیل اینکه فقط یکی از هسته ها فعال است، توان مصرفی کل پردازنده به PL2 نخواهد رسید. حال وقتی سایر هسته های پردازنده برای پردازش چند زیربرنامه موازی (حالت چندریسمانی یا multi-thread) در حالت توربو فعال می شوند، توان مصرفی آن ممکن است به PL2 نزدیک شود و فرکانس پردازش به گونه ای تنظیم می شود که توان مصرفی کل تراشه از این مقدار بیشتر نشود. درواقع، به همین دلیل فرکانس پردازنده در حالتی که تمامی هسته ها فعال هستند، پایین تر از زمانی است که فقط یک هسته فعالیت می کند. وقتی این حجم کاری زیاد برای مدتی برابر با Tau ادامه پیدا کند، بنابر تعریف، سفت افزار باید سریعا میزان توان مصرفی را به PL1 کاهش دهد. اگر به دلیل سنگینی حجم کار میزان توان مصرفی نتواند در محدوده ی PL1 باقی بماند، ولتاژ ورودی و فرکانس پردازشی به گونه ای تنظیم خواهند شد که توان مصرفی کل تراشه به اندازه ی PL1 باقی بماند. درنتیجه، دمای تراشه را کاهش و طول عمرش را افزایش می دهد.

توان مصرفی پردازنده در همین سطح PL1 باقی خواهد ماند تا زمانی که پردازنده وظیفه ی خود را به پایان برساند و یکی از هسته ها برای مدتی معلوم (معمولا زیر پنج ثانیه) در حالت غیرفعال یا idle قرار گیرد. پس از گذشت این زمان، سیستم می تواند درصورت اعمال حجم کاری جدید باردیگر سطح توان PL2 را به کار گیرد.

به عنوان مثال، در پردازنده Core i7-8700K اینتل، مقدار PL1 برابر با ۹۵ وات و PL2 برابر با۱۱۸.۷۵ وات و Tau هشت ثانیه تعیین شده اند. بنابراین در این حالت، پردازنده باید بتواند تا هشت ثانیه در سطح انرژی حدود ۱۱۹ وات فعال باشد و بعد از آن به سطح ۹۵ وات بازمی گردد. جالب اینجاست که اینتل این مقادیر را برای چندین نسل از پردازنده های خود ثابت نگه داشته؛ چراکه توان مصرفی این پردازنده ها حتی در حالتی که با تمام قوا درحال فعالیت هستند، حتی پایین تر از سطح PL1 یا همان ۹۵ وات است. بااین حال، ازآنجاکه این مقادیر را سفت افزار تنظیم می کنند، تولیدکنندگان مادربرد می توانند با استفاده از خنک کننده های قوی تر به عنوان مثال PL2 را بدون محدودیت سفت افزاری (درعمل برابر با حداکثر توان قابل مصرف تراشه برای ماندن در محدوده ی دمایی مجاز) و PL1 را به ۱۶۵ وات یا همان ۹۵ وات تغییر دهند. اگر دلیل این مسئله برایتان مشخص نیست، کمی پایین تر آن را توضیح خواهیم داد.

تنظیمات پیش فرض سازنده پردازنده برای توان مصرفی

درواقع در محصولاتی با محدودیت دمایی مانند لپ تاپ ها و کامپیوترهای شخصی کوچک، مقادیر PL1 و PL2 و Tauباید کاملا محافظه کارانه انتخاب شوند. حتی در تعدادی از محصولات رده بالا نیز مقدارPL2 را برابر با TLP قرار می دهند تا مطمئن شوند اگر پردازنده در حالت توربو قرار گرفت، میزان توان مصرفی آن بیشتر از TLP نشود.

پس از ظهور پردازند ه های شش هسته ای، در بررسی پردازنده ها تا وقتی دمای پردازنده در محدوده ی مجاز قرار دارد، معمولا مقادیر PL1 و PL2 نامحدود درنظر گرفته می شوند. دلیلی اصلی این مسئله چیست

تمامی سیستم های مدرن در خود قابلیت تنظیم سطوح انرژی (سطح انرژی برای بلند مدت و کوتاه مدت) و زمان مجاز برای هر سطح انرژی را دارند. در اکثر مواقع و در تنظیمات پیش فرض، به دلیل اینکه سیستم به صورت خودکار سطوح مناسب را تعیین می کند، کاربر این مقادیر را نمی بیند. بدین ترتیب، تولیدکنندگان مقادیر مدنظر را در حافظه ذخیره و از آن ها استفاده می کنند؛ ولی کاربر فقط کلمه Auto، به معنی تنظیم خودکار را می بیند. با استفاده از این استراتژی، تولیدکننده می تواند مثلا مقدار PL2 را برابر با ۴۰۹۶ وات و مقدار Tauرا برابر با ۶۵۵۳۵ ثانیه یا 1- قرار دهد که در تنظیمات بایوس به معنای بی نهایت است. این تنظیمات تا وقتی دما از حد مجاز فراتر نرود، به پردازنده امکان فعالیت همیشگی در حالت توربو را می دهد.

عدم محدودیت برای حداکثر توان مصرفی

از دیدگاه شما چرا تولیدکنندگان از این روش بهره می برند؟ دلایل متعددی برای این کار ذکر کرده اند: ۱. کاربر می تواند همیشه از حالت توربوی پردازنده بهره ببرد که در گرفتن امتیازات فراوان در بنچمارک های مختلف و دریافت دیدگاه های مثبت منتقدان یا در حالت ساده تر مقایسه ی توانایی هایی پردازنده های مختلف ازلحاظ آماری مؤثر خواهد بود؛ ۲. به تولیدکنندگان مادربرد این اجازه را می دهد که در محصولاتشان یا از سطوح انرژی پیش فرض تعیین شده برای این پردازنده استفاده کنند یا اینکه سطوح انرژی مختص به خود را برای مهندسی بهتر محصول نهایی تعریف کنند. درواقع، وقتی مادربرد با طراحی رده بالا، قابلیت استفاده ی دائمی از تمام هسته های پردازنده در حالت توربو را دارد، با این روش تولیدکننده امکان اجرای آن را خواهد داشت؛ ۳. اگر کاربر از سیستم های خنک کننده ی پیشرفته تر استفاده کند، می تواند پردازنده را در حالت توربوی تمام هسته ای و به تبع آن، سطوحی بالاتر از ۱۶۰ وات به کار گیرد و این تجربه ی کاربری بهتری برای کاربر رقم می زند.

پس به کدام روش باید اعتماد کرد؟ تفاوت این روش ها در چیست؟

سازندگان تراشه ی استاندارد مشخصی برای پردازنده های خود تعیین می کنند. مقادیر PL1،PL2 ،Tau، مدار مادربرد و تنظیمات سفت افزار همگی از مقادیر پیشنهادی سازنده استفاده می کنند. تعدادی از این مقادیر برای کاربر معلوم و مابقی آن ها نامعلوم هستند؛ ولی درهرصورت این مقادیر صرفا پیشنهاد هستند و نهایتا می توانند آن را تولیدکنندگان مادربرد دست خوش تغییر کنند. به همین دلیل، بسیاری از کاربران تمایل دارند قدرت پردازنده در حالات <<تنظیمات پیشنهادی سازنده ی پردازنده>> و <<تنظیمات پیش فرض محصول نهایی>> و <<حالتی که پردازنده در سطوح حداکثری خود فعال است>> را بدانند و این، کار آزمایش کنندگان این پردازنده ها را دشوار خواهد کرد. همان طور که معلوم است، پردازنده در حالت تنظیمات پیش فرض سازنده ی پردازنده ، قدرت به مراتب کمتری درمقایسه با حالت تنطیمات پیش فرض محصول نهایی خواهد داشت. حالتی که پردازنده در سطوح انرژی حداکثری خود مشغول فعالیت است نیز به وضوح بیشترین قدرت پردازنده را نمایش می دهد. بنابراین، تقریبا تمامی بررسی های انجام شده روی پردازنده های موجود در بازار با استفاده از تنظیمات محصول نهایی بوده و در آن ها از تنظیمات پیشنهادی تولیدکننده ی پردازنده استفاده نشده است.

کاربران تمایل دارند قدرت پردازنده در حالات <<تنظیمات پیشنهادی سازنده >> و <<تنظیمات پیش فرض محصول نهایی>> و <<فعال در سطوح حداکثری>> آن را بدانند

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

باتوجه به این اتفاق، پیشنهاد استفاده از دو مقدار TLP متفاوت به جای یک مقدار ثابت برای محصولات در آینده غیرمنطقی به نظر نمی رسد؛ مثلا (TDP (Peak یا TDP برای سطح انرژی PL2 و (TDP(sustained یا TDP برای سطح انرژی PL1. دراین صورت، کاربر می تواند میزان حداکثر توان مصرفی را از توان مصرفی در حالت پردازش با فرکانس پایه تشخیص دهد.

علم وفناوری...
ما را در سایت علم وفناوری دنبال می کنید

برچسب : نویسنده : 9elme1404c بازدید : 183 تاريخ : سه شنبه 27 آذر 1397 ساعت: 16:38