در پردازنده های مدرن دسک تاپ و (مخصوصاً) موبایل ، از تعدادی از فن آوری های صرفه جویی در مصرف انرژی استفاده می شود: ODCM ، CxE ، EIST و غیره. امروز ما به بالاترین سطح از آنها علاقه مند خواهیم شد: کنترل انعطاف پذیر فرکانس و ولتاژ هسته پردازنده در حین کار - جالب "n" ساکت ، PowerNow! از AMD و SpeedStep پیشرفته (EIST) از اینتل.

اغلب اوقات ، یک کاربر رایانه یا لپ تاپ فقط باید (پشتیبانی را علامت بزنید) پشتیبانی از یک فناوری خاص را در BIOS و / یا سیستم عامل فعال کند - تنظیم دقیق معمولاً ارائه نمی شود ، اگرچه ، همانطور که تمرین نشان می دهد ، می تواند بسیار مفید باشد. در این مقاله در مورد چگونگی کنترل ولتاژ عملکرد هسته پردازنده از سیستم عامل (به عنوان مثال Intel Pentium M و FreeBSD) و اینکه چرا ممکن است به آن نیاز داشته باشید صحبت خواهم کرد.

با وجود تعداد زیادی کتابچه راهنما ، شما به ندرت توصیف دقیقی از فناوری Enhanced SpeedStep از نظر سیستم عامل (و نه کاربر نهایی) ، به ویژه در روسی پیدا می کنید ، بنابراین بخش قابل توجهی از مقاله به اجرا اختصاص یافته است جزئیات و ماهیت آن تا حدی نظری است.

امیدوارم این مقاله نه تنها برای کاربران FreeBSD مفید باشد: ما همچنین کمی به گنو / لینوکس ، ویندوز و Mac OS X اشاره خواهیم کرد. با این حال ، در این حالت ، سیستم عامل خاص دارای اهمیت ثانویه است.

پیش گفتار

سال گذشته ، پردازنده را در لپ تاپ قدیمی خود ارتقا دادم: من یک پنتیوم M 780 را به جای استاندارد 735 نصب کردم ، اصطلاحاً آن را حداکثر تمام کردم. لپ تاپ تحت بار بیشتر گرم می شود (به دلیل اتلاف گرما 10 وات). من زیاد به این توجه نکردم (با این تفاوت که کولر را برای هر مورد تمیز و روان کردم) ، اما یک روز خوب ، در طی یک گردآوری طولانی ، کامپیوتر ... فقط خاموش شد (دما به صد درجه بحرانی رسید) . من مقدار متغیر سیستم hw.acpi.thermal.tz0.tem0.tem0 را به سینی آوردم تا دما را کنترل کرده و در صورت وجود ، وظیفه "سنگین" را به موقع قطع کنم. اما بعد از مدتی گارد خود را از دست دادم (دما همیشه در حد نرمال بود) ، و همه چیز تکرار شد. در آن لحظه ، من تصمیم گرفتم که دیگر نمی خواهم به طور مداوم از خاموش شدن اضطراری هنگام بار طولانی پردازنده بترسم و دستم را روی Ctrl-C نگه دارم ، یا پردازنده را مجبور کنم.

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

کمی تئوری

همانطور که می دانید ، اتلاف گرمای پردازنده متناسب با ظرفیت ، فرکانس و مربع ولتاژ (هر کسی که تعجب می کند چرا چنین است ، می تواند وابستگی خود را بدست آورد و پردازنده را به عنوان مجموعه ای از مبدل های CMOS ابتدایی در نظر گرفت (منفی منطقی) یا پیوندهای یک ، دو ، سه را دنبال کند).

پردازنده های موبایل مدرن می توانند حداکثر 50-70 وات مصرف کنند که در نهایت در گرما پراکنده می شوند. این موارد زیاد است (به یاد داشته باشید لامپ های رشته ای) ، به خصوص برای یک لپ تاپ ، که در حالت مستقل تحت بار ، مانند آن پرتقال های خوک باتری را "می خورد". در شرایط فضای محدود ، گرما به طور فعال باید حذف شود ، این به معنای مصرف انرژی اضافی برای چرخاندن فن خنک کننده است (احتمالاً چندین).

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

کمی تاریخ

برای اولین بار ، فناوری SpeedStep (نسخه 1.1) در نسل دوم پنتیوم های سوم ظاهر شد (با توجه به فناوری پردازش 18 میکرونی Mobile Coppermine برای لپ تاپ ها ، 2000) ، که بسته به بار یا منبع تغذیه کامپیوتر - شبکه یا باتری - به دلیل یک عامل متغیر می تواند بین فرکانس های بالا و پایین جابجا شود. در حالت اقتصادی ، پردازنده حدود نیمی از انرژی را مصرف کرد.

با انتقال به فرایند فنی 13 میکرونی ، این فناوری نسخه شماره 2.1 را دریافت می کند و "پیشرفته" می شود - اکنون پردازنده می تواند نه تنها فرکانس ، بلکه ولتاژ را نیز کاهش دهد. نسخه 2.2 سازگاری برای معماری NetBurst است و توسط نسخه سوم (پلت فرم Centrino) این فناوری رسما Enhanced Intel SpeedStep (EIST) نامیده می شود.

نسخه 3.1 (2003) برای اولین بار در نسل اول و دوم پردازنده های پنتیوم M (هسته های Banias و Dothan) استفاده می شود. فرکانس متفاوت بود (در ابتدا فقط بین دو مقدار جابجا شد) از 40٪ به 100٪ پایه یک ، با یک مرحله 100 مگاهرتز (برای Banias) یا 133 مگاهرتز (برای Dothan ، مورد ما). همزمان ، اینتل برای بهینه سازی بیشتر مصرف انرژی ، مدیریت پویای حافظه نهان L2 را معرفی می کند. نسخه 3.2 (Enhanced EIST) - سازگاری برای پردازنده های چند هسته ای با حافظه نهان مشترک L2. (سوالات متداول کمی از اینتل درباره فناوری SpeedStep.)

اکنون ، به جای اینکه کورکورانه نحوه و آموزش های متعدد را دنبال کنید ، pdf "ku" را بارگیری کنید و سعی کنید نحوه کار EST را درک کنید (من به استفاده از این مخفف ادامه خواهم داد ، زیرا جهانی تر و کوتاه تر است).

نحوه کار EST

بنابراین ، EST به شما امکان می دهد تا عملکرد و مصرف برق پردازنده را مدیریت کنید ، و به صورت پویا، در طول کار خود. برخلاف پیاده سازی های قبلی که برای تغییر پارامترهای عملکرد پردازنده به پشتیبانی سخت افزاری (در چیپ ست) نیاز داشتند ، EST این امکان را می دهد به صورت برنامه ای، یعنی با استفاده از BIOS یا سیستم عامل ، بسته به بار ، نوع منبع تغذیه کامپیوتر ، دمای پردازنده و / یا تنظیمات سیستم عامل (ضریب) ضریب (نسبت فرکانس پردازنده به فرکانس گذرگاه) و ولتاژ هسته (V سی سی) را تغییر دهید.

در حین کار ، پردازنده در یکی از چندین حالت (حالت قدرت) قرار دارد: T (دریچه گاز) ، S (خواب) ، C (بیکار) ، P (عملکرد) ، مطابق با قوانین خاص بین آنها جابجا می شود (ص 386 ACPI مشخصات 5.0).

هر پردازنده موجود در سیستم باید در یک جدول DSDT ، اغلب در فضای نامی _ _PR شرح داده شود ، و معمولاً تعدادی از روش ها را فراهم می کند که از طریق آنها تعامل با سیستم عامل (درایور PM) رخ می دهد ، و ویژگی های پردازنده را توصیف می کند. (_PDC ، _PPC) ، ایالات پشتیبانی شده (_CST ، _TSS ، _PSS) و مدیریت آنها (_PTC ، _PCT). مقادیر لازم برای هر پردازنده (اگر به اصطلاح در بسته پشتیبانی پردازنده باشد) توسط BIOS "مادربرد" تعیین می شود ، که در هنگام پر کردن جداول مربوطه و روش های ACPI (p. 11 pdf ") دستگاه بوت می شود

EST کار پردازنده را در حالت P (حالت P) کنترل می کند ، آنها برای ما جالب خواهند بود. به عنوان مثال ، پنتیوم M از شش حالت P پشتیبانی می کند (شکل 1.1 و جدول 1.6 pdf "ki را ببینید") ، از نظر ولتاژ و فرکانس متفاوت است:

به طور کلی ، وقتی پردازنده از قبل شناخته نشده باشد ، تنها روش کمابیش قابل اعتماد (و توصیه شده توسط اینتل) ACPI است. می توانید مستقیماً ، با دور زدن ACPI ، از طریق رجیسترهای MSR (Model-Specific Register) با یک پردازنده خاص ارتباط برقرار کنید ، از جمله مستقیماً از خط فرمان: با شروع نسخه 7.2 ، FreeBSD از ابزار cpucontrol (8) برای این کار استفاده می کند.

با مشاهده بیت شانزدهم در IA_32_MISC_ENABLE (0x1A0) می توانید بفهمید که پردازنده شما از EST پشتیبانی می کند ، باید تنظیم شود:

# kldload cpuctl # cpucontrol -m 0x1a0 / dev / cpuctl0 | (بخوانید _ msr سلام لو ؛ echo $ ((lo \u003e\u003e 16 & 1))) 1
دستور مشابه برای GNU / Linux (بسته msr-tools لازم است):

# modprobe msr # echo $ ((`rdmsr -c 0x1a0` \u003e\u003e 16 & 1)) 1
انتقال بین حالت ها هنگام نوشتن در IA32_PERF_CTL ثبت (0x199) اتفاق می افتد. با خواندن رجیستر IA32_PERF_STATUS (0x198) که به صورت پویا به روز می شود (tab. 1.4 pdf "ki") می توانید از حالت عملیاتی کنونی مطلع شوید. در آینده ، پیشوند IA32_ را برای اختصار حذف می کنم.

# cpucontrol -m 0x198 / dev / cpuctl0 MSR 0x198: 0x0612112b 0x06000c20
از مستندات به دست می آید که حالت فعلی در 16 بیت پایین رمزگذاری شده است (اگر چندین بار دستور را اجرا کنید ، ممکن است مقدار آنها تغییر کند - این بدان معنی است که EST کار می کند). اگر به بیت های دیگر نگاه دقیق تری بیندازید ، مشخصاً آنها نیز زباله نیستند. با googling می توانید معنی آنها را دریابید.

PERF_STATUS ساختار ثبت

داده های خوانده شده از PERF_STATUS با ساختار زیر نشان داده می شود (با فرض اینکه داده ها به صورت اندک اندک ذخیره می شوند):

msr_perf_status را بنویسید (curr_psv بدون امضا: 16؛ / * PSV فعلی * / وضعیت بدون امضا: 8؛ / * پرچم های وضعیت * / بدون امضا min_mult: 8؛ / * حداقل ضرب * / امضا max_psv: 16؛ / * حداکثر PSV * / بدون علامت init_psv: 16؛ / * PSV روشن * /)؛
سه فیلد 16 بیتی اصطلاحاً Performance State Values \u200b\u200b(PSV) هستند ، ساختار آنها را در زیر بررسی خواهیم کرد: مقدار PSV فعلی ، حداکثر (بستگی به پردازنده دارد) و مقدار ابتدای سیستم (وقتی روشن) مقدار فعلی (curr_psv) بدیهی است که با تغییر حالت کار ، حداکثر (max_psv) معمولاً ثابت می ماند ، مقدار شروع (init_psv) تغییر نمی کند: به عنوان یک قاعده ، برای دسک تاپ و سرور برابر است با حداکثر مقدار ، اما حداقل CPU های موبایل. حداقل ضریب (min_mult) برای پردازنده های اینتل تقریباً همیشه 6 است. قسمت وضعیت حاوی مقدار برخی از پرچم ها است ، به عنوان مثال ، هنگام وقوع رویدادهای EST یا THERM (یعنی به ترتیب وقتی وضعیت P تغییر می کند یا پردازنده بیش از حد گرم می شود).

اکنون که هدف همه 64 بیت ثبت نام PERF_STATUS را دانستیم ، می توانیم کلمه خوانده شده در بالا را رمزگشایی کنیم: 0x0612 112b 0x06 00 0c20 ⇒ PSV در شروع 0x0612 ، حداکثر مقدار 0x112b ، حداقل ضرب 6 (همانطور که انتظار می رود) ، پرچم ها پاک شده ، مقدار PSV فعلی \u003d 0x0c20. این 16 بیت دقیقاً به چه معناست؟

ساختار ارزش عملکرد دولت (PSV)

دانستن و درک اینکه PSV چیست بسیار مهم است ، زیرا در این فرم است که حالت های پردازنده تنظیم می شود.

ساختار psv (بدون امضا vid: 6 ؛ / * شناسه ولتاژ * / امضا نشده _ reserved1: 2 ؛ امضا نشده freq: 5 ؛ / * شناسه فرکانس * / امضا نشده _ reservation2: 1 ؛ امضا nibr: 1 ؛ / * نسبت اتوبوس غیر عدد صحیح * / بدون امضا slfm: 1؛ / * فرکانس دینامیک FSB (Super-LFM) * /) ؛
تغییر پویای فرکانس FSB مشخص می کند که هر ثانیه ساعت FSB را رد کنید ، یعنی فرکانس کار را نصف کنید این ویژگی برای اولین بار در پردازنده های Core 2 Duo (هسته Merom) پیاده سازی شده است و به ما مربوط نمی شود و همچنین نسبت Bus بدون عدد صحیح - یک حالت خاص که توسط برخی پردازنده ها پشتیبانی می شود و به شما امکان می دهد ، همانطور که از نام آن مشخص است ، کنترل دقیق آنها فرکانس.

دو فیلد با خود فناوری EST رابطه دارند - شناسه های فرکانس (شناسه فرکانس ، Fid) که از نظر عددی برابر با یک ضرب است و ولتاژ (شناسه ولتاژ ، Vid) که با سطح ولتاژ مطابقت دارد (که معمولاً کمترین مستندات را دارد) )

شناسه ولتاژ

اینتل از افشای اطلاعات (که معمولاً NDA مورد نیاز است) درباره چگونگی رمزگذاری دقیق شناسه ولتاژ برای هر پردازنده بسیار مایل نیست. اما خوشبختانه برای بیشتر پردازنده های محبوب این فرمول شناخته شده است. به طور خاص ، برای Pentium M ما (و بسیاری دیگر): V cc \u003d Vid 0 + (مرحله Vid × V) ، که در آن V cc ولتاژ جریان (واقعی) است ، Vid 0 ولتاژ پایه است (هنگامی که Vid \u003d\u003d 0) ، مرحله V - مرحله. جدول برخی پردازنده های معروف (تمام مقادیر بر حسب میلی ولت):
پردازنده Vid 0 مرحله V بوت V پنج دقیقه حداکثر V
پنتیوم م 700,0 16,0 xxxx ، x xxx ، x xxxx ، x
E6000 ، E4000 825,0 12,5 1100,0 850,0 1500,0
E8000 ، E7000 825,0 12,5 1100,0 850,0 1362,5
X9000 712,5 12,5 1200,0 800,0 1325,0
T9000 712,5 12,5 1200,0 750,0 1300,0
P9000 ، P8000 712,5 12,5 1200,0 750,0 1300,0
Q9000D ، Q8000D 825,0 12,5 1100,0 850,0 1362,5
Q9000M 712,5 12,5 1200,0 850,0 1300,0
ضرب (به عنوان مثال Fid) برای PSV نوشته شده است که 8 بیت به سمت چپ منتقل شده است ، با کمترین مقدار شش بیت توسط Vid اشغال شده است. زیرا در مورد ما ، می توان بقیه بیت ها را نادیده گرفت ، سپس PSV ، فرکانس پردازنده ، گذرگاه سیستم و ولتاژ فیزیکی با یک فرمول ساده مرتبط هستند (برای Pentium M):
حال بیایید به ثبت کنترل (PERF_CTL) نگاهی بیندازیم. نوشتن برای آن باید به صورت زیر انجام شود: اول ، مقدار فعلی خوانده می شود (کل کل 64 بیتی) ، بیت های لازم در آن تغییر می یابد و دوباره به ثبت می رسد (اصطلاحاً خواندن-اصلاح-نوشتن) .

PERF_CTL ساختار ثبت

struktur msr_perf_ctl (بدون امضا psv: 16؛ / * درخواست PSV * / امضا نشده _ reservation1: 16؛ امضا نشده ida_diseng: 1؛ / * IDA جدا * / امضا نشده reserv2: 31؛)؛
بیت لغو IDA (Intel Dynamic Acceleration) به شما امکان می دهد کنترل فرکانس فرصت طلبانه پردازنده های Intel Core 2 Duo T7700 و نسخه های بعدی را به طور موقت غیرفعال کنید - باز هم ، ما علاقه ای نداریم. کم 16 بیت (PSV) - حالتی که ما از پردازنده می خواهیم سوئیچ کند.

_ جدول PSS

جدول _PSS مجموعه ای از حالات است ( بسته بندی در اصطلاحات ACPI) یا روشی که چنین آرایه ای را برمی گرداند. هر حالت P به نوبه خود توسط ساختار زیر تعریف می شود (ص 409 مشخصات ACPI):

Struct Pstate (CoreFrequency بدون امضا؛ / * فرکانس کاری هسته CPU ، مگاهرتز * / توان بدون امضا؛ / * حداکثر اتلاف توان ، mW * / تأخیر بدون امضا؛ / * تأخیر بدترین حالت در دسترس نبودن پردازنده در حین انتقال ، μs * / بدون امضا BusMasterLatency؛ / * تأخیر بدترین حالت در حالی که Bus Masters قادر به دسترسی به حافظه نیست ، μs * / کنترل بدون علامت ؛ / * مقداری برای نوشتن در PERF_CTL برای تغییر وضعیت به این حالت * / وضعیت بدون امضا ؛ / * مقدار (باید برابر با مقدار خوانده شده باشد از PERF_STATUS) * /) ؛
بنابراین ، هر حالت P با برخی از فرکانس های عملکرد هسته ، حداکثر توان اتلاف شده ، تاخیرهای عبور (در واقع ، این زمان انتقال بین حالت هایی است که CPU و حافظه در دسترس نیستند) مشخص می شود ، در نهایت جالبترین: PSV ، که با این حالت مطابقت دارد و برای رفتن به این حالت باید در PERF_CTL نوشته شود (Control). برای تأیید اینکه پردازنده با موفقیت وارد حالت جدید شده است ، ثبت نام PERF_STATUS را بخوانید و آن را با مقداری که در قسمت وضعیت نوشته شده مقایسه کنید.

درایور EST سیستم عامل ممکن است در مورد برخی پردازنده ها "بداند" ، یعنی. بدون پشتیبانی ACPI قادر به مدیریت آنها خواهد بود. اما این امر نادر است ، مخصوصاً امروزه (اگرچه برای کم کاری "و در لینوکس ، جایی قبل از 2.6.20 ، شما باید جداول را در درایور وصله کنید ، و در سال 2011 این روش کاملاً معمول بود).

لازم به ذکر است که درایور EST حتی در غیاب جدول _PSS و پردازنده ناشناخته نیز می تواند کار کند. مقادیر حداکثر و حداقل را می توان از PERF_STATUS یافت (در این مورد ، بدیهی است ، تعداد حالتهای P به دو تقسیم می شود).

نظریه کافی است. با همه اینها چه باید کرد؟

اکنون که می دانیم 1) هدف همه بیت ها در کلمات ضروری MSR ، 2) نحوه دقیق رمزگذاری PSV برای پردازنده ما ، و 3) جایی که در DSDT برای جستجوی تنظیمات لازم ، زمان آن است که یک جدول فرکانس ایجاد کنیم و ولتاژ پیش فرض... بیایید DSDT را ریخته و در آنجا به دنبال جدول _PSS بگردیم. برای پنتیوم M 780 باید چیزی شبیه به این باشد:

مقادیر پیش فرض _PSS

نام (_PSS ، بسته بندی (0x06) (// در کل 6 حالت (حالت P) تعریف شده است بسته (0x06) (0x000008DB ، // 2267 مگاهرتز (cf. Fid × ساعت FSB) 0x00006978 ، // 27000 mW 0x0000000A ، // 10 میکروثانیه (مطابق با مشخصات) 0x0000000A ، // 10 µs 0x0000112B ، // 0x11 \u003d 17 (ضرب ، Fid) ، 0x2b \u003d 43 (Vid) 0x0000112B) ، بسته (0x06) (0x0000074B ، // 1867 مگاهرتز (82 ٪ حداکثر) 0x000059D8 ، // 23000 مگاوات 0x0000000A ، 0x0000000A ، 0x00000E25 ، // Fid \u003d 14 ، Vid \u003d 37 0x00000E25) ، بسته (0x06) (0x00000640 ، // 1600 مگاهرتز (71٪ حداکثر) 0x00005208 ، // 21000 مگاوات 0x0000000A ، 0x0000000A ، 0x00000C20 ، // Fid \u003d 12 ، Vid \u003d 32 0x00000C20) ، بسته (0x06) (0x00000535 ، // 1333 مگاهرتز (59٪ حداکثر) 0x00004650 ، // 18000 مگاوات 0x0000000A ، 0x0000000A ، 0x0000000A ، 0x00000000A ، 0x00000000A ، 0x0000000A Fid \u003d 10 ، Vid \u003d 28 0x00000A1C) ، بسته (0x06) (0x0000042B ، // 1067 مگاهرتز (47٪ حداکثر) 0x00003E80 ، // 16000 مگاوات 0x0000000A ، 0x0000000000 ، 0x00000817 ، // Fid \u003d 8 ، Vid \u003d 23 0x00000817) ، بسته (0x06) (0x0 0000320 ، // 800 مگاهرتز (35٪ حداکثر) 0x000032C8 ، // 13000 مگاوات 0x0000000A ، 0x0000000A ، 0x00000612 ، // Fid \u003d 6 ، Vid \u003d 18 0x00000612))))


بنابراین ، ما Vid پیش فرض را برای هر سطح P می دانیم: 43 ، 37 ، 32 ، 28 ، 23 ، 18 ، که مربوط به ولتاژهای 1388 میلی ولت تا 988 میلی ولت است. ماهیت کم ولتاژ این است که این ولتاژها کمی بیشتر از حد واقعی است که برای عملکرد پایدار پردازنده لازم است. بیایید سعی کنیم "حد مجاز" را تعیین کنیم.

من یک اسکریپت پوسته ساده برای این نوشتم که Vid را به تدریج پایین می آورد و یک حلقه ساده را انجام می دهد (البته دایمون powerd (8) قبل از این باید ناخن زده شود). بنابراین ، ولتاژهایی را تعیین کردم که اجازه می دهد حداقل پردازنده قطع نشود ، سپس آزمون Super Pi را اجرا کردم و هسته را چندین بار بازسازی کردم. بعداً ، مقدار Vid را برای دو فرکانس حداکثر یک امتیاز بیشتر کردم ، در غیر این صورت gcc به دلیل خطای دستورالعمل غیرقانونی ، گاهاً خراب می شود. در نتیجه همه آزمایشات طی چندین روز ، ما مجموعه Vid "پایدار" زیر را بدست آوردیم: 30 ، 18 ، 12 ، 7 ، 2 ، 0.

تجزیه و تحلیل نتایج

اکنون که حداقل ولتاژهای ایمن را به صورت تجربی تعیین کردیم ، مقایسه آنها با ولتاژهای اصلی جالب است:
کاهش حداکثر ولتاژ حتی تا 15٪ نیز نتایج کاملاً ملموسی را به همراه داشت: بار طولانی مدت نه تنها منجر به گرم شدن بیش از حد پردازنده و خاموش شدن اضطراری نمی شود ، به طور کلی دما تقریباً هرگز از 80 درجه سانتیگراد فراتر نمی رود. عمر باتری پیش بینی شده در حالت "دفتر" ، با توجه به acpiconf -i 0 ، از 1 ساعت 40 متر به 2 ساعت 25 متر افزایش یافته است (نه چندان زیاد ، اما سلول های یون لیتیوم با گذشت زمان "خسته" می شوند ، و من از هفت سال پیش که لپ تاپ را خریداری کردم باتری را عوض نکردم.)

اکنون باید اطمینان حاصل کنیم که تنظیمات به طور خودکار اعمال می شوند. به عنوان مثال می توانید درایور cpufreq (4) را تغییر دهید تا مقادیر PSV از جدول خودش گرفته شود و نه از طریق ACPI. اما این ناراحت کننده است ، فقط به این دلیل که هنگام به روزرسانی سیستم باید به خاطر داشته باشید که باید درایور را وصله دهید - این بیشتر شبیه یک هک کثیف است تا یک راه حل. احتمالاً هنوز هم می توانید به نوعی powerd (8) را وصله بزنید ، که به همین دلایل بد است. شما می توانید به راحتی اسکریپت را اجرا کنید ، ولتاژ را با نوشتن مستقیم به MSR کاهش دهید (که در واقع ، من این کار را برای تعیین ولتاژ "پایدار" انجام دادم) ، اما پس از آن باید به خاطر بیاورید و به طور مستقل انتقال بین حالت ها را انجام دهید (نه تنها P - به طور کلی ، هر حالت ، به عنوان مثال ، هنگامی که لپ تاپ از خواب بیدار می شود). این هم چنین نیست.

اگر مقادیر PSV را از طریق ACPI بدست آوریم ، منطقی است که جدول _PSS را در DSDT تغییر دهیم. خوشبختانه ، برای این کار نیازی نیست که با BIOS سر و صدا کنید: FreeBSD قادر است DSDT را از یک پرونده بارگیری کند (ما قبلاً بیش از یک بار در مورد اصلاح جداول ACPI در Habré نوشته ایم ، بنابراین اکنون ما در این مورد صحبت نمی کنیم) جزئیات) قسمتهای مورد نیاز را در DSDT جایگزین کنید:

پچ کم فشار برای _PSS

-7385.8 +7385.80x00006978 ، 0x0000000A ، 0x0000000A ، - 0x0000112B ، - 0x0000112B + 0x0000111D ، + 0x0000111D) ، بسته (0x06)-7395.8 +7395 ،000000000000000000000000000000000000000 0x00000E12 ، + 0x00000E12) ، بسته (0x06)-7405.8 +7405.80x00005208 ، 0x0000000A ، 0x0000000A ، - 0x00000C20 ، - 0x00000C00C + 0x00000) 0x06) 0@00x00000000 @ 0x0000000000000000000، - 0x00000A1C + 0x00000A07 ، + 0x00000A07) ، بسته بندی (0x06)-7425.8 +7425.80x00003E80 0x0000000AA ، 0x0000000000A ، - 0x00000817 ، - 0x00000817 + 0x000008080 @ 0x00000802 ، + 0x000000002 (0x00000802) ، + 0x00000817 + 0x00000802 (0x00000A07) @ 0x000032C8 ، 0x0000000A ، 0x0000000A ، - 0x00000612 ، + 0x00000612)))


یک پرونده جدید AML (کد byt کد ACPI) کامپایل کنید و /boot/loader.conf را تغییر دهید تا FreeBSD به جای پرونده پیش فرض ، DSDT اصلاح شده ما را بارگیری کند:

Acpi_dsdt_load \u003d "بله" acpi_dsdt_name \u003d "/ root / undervolt.aml"
به طور کلی ، این همه است. فقط به یاد داشته باشید که در صورت تغییر پردازنده ، این دو خط را در /boot/loader.conf توضیح دهید.

حتی اگر قرار نیست ولتاژهای اسمی را کاهش دهید ، توانایی تنظیم مدیریت حالت های پردازنده (نه تنها P-state) به درد شما می خورد. در واقع ، اغلب اتفاق می افتد که "منحنی" BIOS جداول را به طور نادرست ، ناقص یا پر نمی کند (به عنوان مثال ، زیرا سلرون از EST پشتیبانی نمی کند و سازنده رسماً جایگزینی آن را تأمین نمی کند). در این صورت شما مجبورید همه کارها را خودتان انجام دهید. توجه داشته باشید که افزودن جدول _PSS به تنهایی ممکن است کافی نباشد. به عنوان مثال ، دولت های C توسط جدول _CST مشخص شده اند ، و علاوه بر این ، ممکن است لازم باشد که روش های کنترل (عملکرد عملکرد ، _PCT) خود توصیف شوند. خوشبختانه ، این ساده و کاملاً دقیق است ، با مثالهایی که در فصل هشتم مشخصات ACPI شرح داده شده است.

کم کاری در GNU / Linux

حقیقت را بگویم ، در ابتدا فکر کردم که کافی است راهنمای Gentoo Undervolting را بخوانم و فقط آن را برای FreeBSD تطبیق دهم. معلوم شد که این کار چندان آسان نبود ، زیرا این سند بسیار احمقانه ای به نظر می رسید (که در واقع برای ویکتوریا جنتو عجیب است). متأسفانه ، من چیزی مشابه در سایت جدید آنها پیدا نکردم ، من مجبور شدم به یک نسخه قدیمی اکتفا کنم. و اگرچه من می فهمم که این راهنما اهمیت خود را از دست داده است ، اما من کمی از آن انتقاد خواهم کرد. :-)

به دلایلی ، به دلایلی ، بلافاصله ، بدون اعلام جنگ ، به آنها پیشنهاد می شود تا هسته را وصله بزنند (در FreeBSD ، برای یک دقیقه ، ما هیچ سیستمی نداریم کد لازم نبود اصلاح شود). برای چکش زدن در داخل راننده یا نوشتن مقادیر ولتاژ "ایمن" در برخی از اسکریپت های اولیه ، مشخص نیست که توسط چه کسی و چگونه آنها از یک جدول خاص (که در آن Pentium M 780 به طعنه توسط یک خطی که فقط از علامت سوال تشکیل شده است). از توصیه هایی پیروی کنید ، برخی از آنها توسط افرادی نوشته شده اند که به وضوح نمی فهمند که در مورد چه چیزی صحبت می کنند. و مهمتر از همه ، کاملاً نامشخص است که چرا و چگونه دقیقاً این تعویض های جادویی برخی از اعداد برای دیگران کار می کنند. هیچ راهی برای "لمس" EST قبل از وصله و بازسازی هسته وجود ندارد ، و هرگز از رجیسترهای MSR نام نبرید و از خط فرمان با آنها کار نکنید. اصلاح جداول ACPI به عنوان گزینه جایگزین و ترجیحی در نظر گرفته نمی شود.

Makos کاملاً با ACPI تعامل دارد (و انتظار دارد که به درستی کار کند) و تغییر جداول یکی از روشهای اصلی پیکربندی آن برای یک سخت افزار خاص است. بنابراین ، اولین چیزی که به ذهن شما خطور می کند این است که DSDT خود را به همان روش ریخته و وصله کنید. روش جایگزین: google: //IntelEnhancedSpeedStep.kext مانند یک ، دو ، سه.

یکی دیگر از ابزارهای "شگفت انگیز" (خوشبختانه از گذشته منسوخ شده) امکان تغییر ولتاژ و فرکانس را با قیمت 10 دلار ارائه می دهد. :-)

در پردازنده های مدرن دسک تاپ و (مخصوصاً) موبایل ، از تعدادی از فن آوری های صرفه جویی در مصرف انرژی استفاده می شود: ODCM ، CxE ، EIST و غیره. امروز ما به بالاترین سطح از آنها علاقه مند خواهیم شد: کنترل انعطاف پذیر فرکانس و ولتاژ هسته پردازنده در حین کار - جالب "n" ساکت ، PowerNow! از AMD و SpeedStep پیشرفته (EIST) از اینتل.

اغلب اوقات ، یک کاربر رایانه یا لپ تاپ فقط باید (پشتیبانی را علامت بزنید) پشتیبانی از یک فناوری خاص را در BIOS و / یا سیستم عامل فعال کند - تنظیم دقیق معمولاً ارائه نمی شود ، اگرچه ، همانطور که تمرین نشان می دهد ، می تواند بسیار مفید باشد. در این مقاله در مورد چگونگی کنترل ولتاژ عملکرد هسته پردازنده از سیستم عامل (به عنوان مثال Intel Pentium M و FreeBSD) و اینکه چرا ممکن است به آن نیاز داشته باشید صحبت خواهم کرد.

با وجود تعداد زیادی کتابچه راهنما ، شما به ندرت توصیف دقیقی از فناوری Enhanced SpeedStep از نظر سیستم عامل (و نه کاربر نهایی) ، به ویژه در روسی پیدا می کنید ، بنابراین بخش قابل توجهی از مقاله به اجرا اختصاص یافته است جزئیات و ماهیت آن تا حدی نظری است.

امیدوارم این مقاله نه تنها برای کاربران FreeBSD مفید باشد: ما همچنین کمی به گنو / لینوکس ، ویندوز و Mac OS X اشاره خواهیم کرد. با این حال ، در این حالت ، سیستم عامل خاص دارای اهمیت ثانویه است.

پیش گفتار

سال گذشته ، پردازنده را در لپ تاپ قدیمی خود ارتقا دادم: من یک پنتیوم M 780 را به جای استاندارد 735 نصب کردم ، اصطلاحاً آن را حداکثر تمام کردم. لپ تاپ تحت بار بیشتر گرم می شود (به دلیل اتلاف گرما 10 وات). من زیاد به این توجه نکردم (با این تفاوت که کولر را برای هر مورد تمیز و روان کردم) ، اما یک روز خوب ، در طی یک گردآوری طولانی ، کامپیوتر ... فقط خاموش شد (دما به صد درجه بحرانی رسید) . من مقدار متغیر سیستم hw.acpi.thermal.tz0.tem0.tem0 را به سینی آوردم تا دما را کنترل کرده و در صورت وجود ، وظیفه "سنگین" را به موقع قطع کنم. اما بعد از مدتی گارد خود را از دست دادم (دما همیشه در حد نرمال بود) ، و همه چیز تکرار شد. در آن لحظه ، من تصمیم گرفتم که دیگر نمی خواهم به طور مداوم از خاموش شدن اضطراری هنگام بار طولانی پردازنده بترسم و دستم را روی Ctrl-C نگه دارم ، یا پردازنده را مجبور کنم.

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

کمی تئوری

همانطور که می دانید ، اتلاف گرمای پردازنده متناسب با ظرفیت ، فرکانس و مربع ولتاژ (هر کسی که تعجب می کند چرا چنین است ، می تواند وابستگی خود را بدست آورد و پردازنده را به عنوان مجموعه ای از مبدل های CMOS ابتدایی در نظر گرفت (منفی منطقی) یا پیوندهای یک ، دو ، سه را دنبال کند).

پردازنده های موبایل مدرن می توانند حداکثر 50-70 وات مصرف کنند که در نهایت در گرما پراکنده می شوند. این موارد زیاد است (به یاد داشته باشید لامپ های رشته ای) ، به خصوص برای یک لپ تاپ ، که در حالت مستقل تحت بار ، مانند آن پرتقال های خوک باتری را "می خورد". در شرایط فضای محدود ، گرما به طور فعال باید حذف شود ، این به معنای مصرف انرژی اضافی برای چرخاندن فن خنک کننده است (احتمالاً چندین).

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

کمی تاریخ

برای اولین بار ، فناوری SpeedStep (نسخه 1.1) در نسل دوم پنتیوم های سوم ظاهر شد (با توجه به فناوری پردازش 18 میکرونی Mobile Coppermine برای لپ تاپ ها ، 2000) ، که بسته به بار یا منبع تغذیه کامپیوتر - شبکه یا باتری - به دلیل یک عامل متغیر می تواند بین فرکانس های بالا و پایین جابجا شود. در حالت اقتصادی ، پردازنده حدود نیمی از انرژی را مصرف کرد.

با انتقال به فرایند فنی 13 میکرونی ، این فناوری نسخه شماره 2.1 را دریافت می کند و "پیشرفته" می شود - اکنون پردازنده می تواند نه تنها فرکانس ، بلکه ولتاژ را نیز کاهش دهد. نسخه 2.2 سازگاری برای معماری NetBurst است و توسط نسخه سوم (پلت فرم Centrino) این فناوری رسما Enhanced Intel SpeedStep (EIST) نامیده می شود.

نسخه 3.1 (2003) برای اولین بار در نسل اول و دوم پردازنده های پنتیوم M (هسته های Banias و Dothan) استفاده می شود. فرکانس متفاوت بود (در ابتدا فقط بین دو مقدار جابجا شد) از 40٪ به 100٪ پایه یک ، با یک مرحله 100 مگاهرتز (برای Banias) یا 133 مگاهرتز (برای Dothan ، مورد ما). همزمان ، اینتل برای بهینه سازی بیشتر مصرف انرژی ، مدیریت پویای حافظه نهان L2 را معرفی می کند. نسخه 3.2 (Enhanced EIST) - سازگاری برای پردازنده های چند هسته ای با حافظه نهان مشترک L2. (سوالات متداول کمی از اینتل درباره فناوری SpeedStep.)

اکنون ، به جای اینکه کورکورانه نحوه و آموزش های متعدد را دنبال کنید ، pdf "ku" را بارگیری کنید و سعی کنید نحوه کار EST را درک کنید (من به استفاده از این مخفف ادامه خواهم داد ، زیرا جهانی تر و کوتاه تر است).

نحوه کار EST

بنابراین ، EST به شما امکان می دهد تا عملکرد و مصرف برق پردازنده را مدیریت کنید ، و به صورت پویا، در طول کار خود. برخلاف پیاده سازی های قبلی که برای تغییر پارامترهای عملکرد پردازنده به پشتیبانی سخت افزاری (در چیپ ست) نیاز داشتند ، EST این امکان را می دهد به صورت برنامه ای، یعنی با استفاده از BIOS یا سیستم عامل ، بسته به بار ، نوع منبع تغذیه کامپیوتر ، دمای پردازنده و / یا تنظیمات سیستم عامل (ضریب) ضریب (نسبت فرکانس پردازنده به فرکانس گذرگاه) و ولتاژ هسته (V سی سی) را تغییر دهید.

در حین کار ، پردازنده در یکی از چندین حالت (حالت قدرت) قرار دارد: T (دریچه گاز) ، S (خواب) ، C (بیکار) ، P (عملکرد) ، مطابق با قوانین خاص بین آنها جابجا می شود (ص 386 ACPI مشخصات 5.0).

هر پردازنده موجود در سیستم باید در یک جدول DSDT ، اغلب در فضای نامی _ _PR شرح داده شود ، و معمولاً تعدادی از روش ها را فراهم می کند که از طریق آنها تعامل با سیستم عامل (درایور PM) رخ می دهد ، و ویژگی های پردازنده را توصیف می کند. (_PDC ، _PPC) ، ایالات پشتیبانی شده (_CST ، _TSS ، _PSS) و مدیریت آنها (_PTC ، _PCT). مقادیر لازم برای هر پردازنده (اگر به اصطلاح در بسته پشتیبانی پردازنده باشد) توسط BIOS "مادربرد" تعیین می شود ، که در هنگام پر کردن جداول مربوطه و روش های ACPI (p. 11 pdf ") دستگاه بوت می شود

EST کار پردازنده را در حالت P (حالت P) کنترل می کند ، آنها برای ما جالب خواهند بود. به عنوان مثال ، پنتیوم M از شش حالت P پشتیبانی می کند (شکل 1.1 و جدول 1.6 pdf "ki را ببینید") ، از نظر ولتاژ و فرکانس متفاوت است:

به طور کلی ، وقتی پردازنده از قبل شناخته نشده باشد ، تنها روش کمابیش قابل اعتماد (و توصیه شده توسط اینتل) ACPI است. می توانید مستقیماً ، با دور زدن ACPI ، از طریق رجیسترهای MSR (Model-Specific Register) با یک پردازنده خاص ارتباط برقرار کنید ، از جمله مستقیماً از خط فرمان: با شروع نسخه 7.2 ، FreeBSD از ابزار cpucontrol (8) برای این کار استفاده می کند.

با مشاهده بیت شانزدهم در IA_32_MISC_ENABLE (0x1A0) می توانید بفهمید که پردازنده شما از EST پشتیبانی می کند ، باید تنظیم شود:

# kldload cpuctl # cpucontrol -m 0x1a0 / dev / cpuctl0 | (بخوانید _ msr سلام لو ؛ echo $ ((lo \u003e\u003e 16 & 1))) 1
دستور مشابه برای GNU / Linux (بسته msr-tools لازم است):

# modprobe msr # echo $ ((`rdmsr -c 0x1a0` \u003e\u003e 16 & 1)) 1
انتقال بین حالت ها هنگام نوشتن در IA32_PERF_CTL ثبت (0x199) اتفاق می افتد. با خواندن رجیستر IA32_PERF_STATUS (0x198) که به صورت پویا به روز می شود (tab. 1.4 pdf "ki") می توانید از حالت عملیاتی کنونی مطلع شوید. در آینده ، پیشوند IA32_ را برای اختصار حذف می کنم.

# cpucontrol -m 0x198 / dev / cpuctl0 MSR 0x198: 0x0612112b 0x06000c20
از مستندات به دست می آید که حالت فعلی در 16 بیت پایین رمزگذاری شده است (اگر چندین بار دستور را اجرا کنید ، ممکن است مقدار آنها تغییر کند - این بدان معنی است که EST کار می کند). اگر به بیت های دیگر نگاه دقیق تری بیندازید ، مشخصاً آنها نیز زباله نیستند. با googling می توانید معنی آنها را دریابید.

PERF_STATUS ساختار ثبت

داده های خوانده شده از PERF_STATUS با ساختار زیر نشان داده می شود (با فرض اینکه داده ها به صورت اندک اندک ذخیره می شوند):

msr_perf_status را بنویسید (curr_psv بدون امضا: 16؛ / * PSV فعلی * / وضعیت بدون امضا: 8؛ / * پرچم های وضعیت * / بدون امضا min_mult: 8؛ / * حداقل ضرب * / امضا max_psv: 16؛ / * حداکثر PSV * / بدون علامت init_psv: 16؛ / * PSV روشن * /)؛
سه فیلد 16 بیتی اصطلاحاً Performance State Values \u200b\u200b(PSV) هستند ، ساختار آنها را در زیر بررسی خواهیم کرد: مقدار PSV فعلی ، حداکثر (بستگی به پردازنده دارد) و مقدار ابتدای سیستم (وقتی روشن) مقدار فعلی (curr_psv) بدیهی است که با تغییر حالت کار ، حداکثر (max_psv) معمولاً ثابت می ماند ، مقدار شروع (init_psv) تغییر نمی کند: به عنوان یک قاعده ، برای دسک تاپ و سرور برابر است با حداکثر مقدار ، اما حداقل CPU های موبایل. حداقل ضریب (min_mult) برای پردازنده های اینتل تقریباً همیشه 6 است. قسمت وضعیت حاوی مقدار برخی از پرچم ها است ، به عنوان مثال ، هنگام وقوع رویدادهای EST یا THERM (یعنی به ترتیب وقتی وضعیت P تغییر می کند یا پردازنده بیش از حد گرم می شود).

اکنون که هدف همه 64 بیت ثبت نام PERF_STATUS را دانستیم ، می توانیم کلمه خوانده شده در بالا را رمزگشایی کنیم: 0x0612 112b 0x06 00 0c20 ⇒ PSV در شروع 0x0612 ، حداکثر مقدار 0x112b ، حداقل ضرب 6 (همانطور که انتظار می رود) ، پرچم ها پاک شده ، مقدار PSV فعلی \u003d 0x0c20. این 16 بیت دقیقاً به چه معناست؟

ساختار ارزش عملکرد دولت (PSV)

دانستن و درک اینکه PSV چیست بسیار مهم است ، زیرا در این فرم است که حالت های پردازنده تنظیم می شود.

ساختار psv (بدون امضا vid: 6 ؛ / * شناسه ولتاژ * / امضا نشده _ reserved1: 2 ؛ امضا نشده freq: 5 ؛ / * شناسه فرکانس * / امضا نشده _ reservation2: 1 ؛ امضا nibr: 1 ؛ / * نسبت اتوبوس غیر عدد صحیح * / بدون امضا slfm: 1؛ / * فرکانس دینامیک FSB (Super-LFM) * /) ؛
تغییر پویای فرکانس FSB مشخص می کند که هر ثانیه ساعت FSB را رد کنید ، یعنی فرکانس کار را نصف کنید این ویژگی برای اولین بار در پردازنده های Core 2 Duo (هسته Merom) پیاده سازی شده است و به ما مربوط نمی شود و همچنین نسبت Bus بدون عدد صحیح - یک حالت خاص که توسط برخی پردازنده ها پشتیبانی می شود و به شما امکان می دهد ، همانطور که از نام آن مشخص است ، کنترل دقیق آنها فرکانس.

دو فیلد با خود فناوری EST رابطه دارند - شناسه های فرکانس (شناسه فرکانس ، Fid) که از نظر عددی برابر با یک ضرب است و ولتاژ (شناسه ولتاژ ، Vid) که با سطح ولتاژ مطابقت دارد (که معمولاً کمترین مستندات را دارد) )

شناسه ولتاژ

اینتل از افشای اطلاعات (که معمولاً NDA مورد نیاز است) درباره چگونگی رمزگذاری دقیق شناسه ولتاژ برای هر پردازنده بسیار مایل نیست. اما خوشبختانه برای بیشتر پردازنده های محبوب این فرمول شناخته شده است. به طور خاص ، برای Pentium M ما (و بسیاری دیگر): V cc \u003d Vid 0 + (مرحله Vid × V) ، که در آن V cc ولتاژ جریان (واقعی) است ، Vid 0 ولتاژ پایه است (هنگامی که Vid \u003d\u003d 0) ، مرحله V - مرحله. جدول برخی پردازنده های معروف (تمام مقادیر بر حسب میلی ولت):
پردازنده Vid 0 مرحله V بوت V پنج دقیقه حداکثر V
پنتیوم م 700,0 16,0 xxxx ، x xxx ، x xxxx ، x
E6000 ، E4000 825,0 12,5 1100,0 850,0 1500,0
E8000 ، E7000 825,0 12,5 1100,0 850,0 1362,5
X9000 712,5 12,5 1200,0 800,0 1325,0
T9000 712,5 12,5 1200,0 750,0 1300,0
P9000 ، P8000 712,5 12,5 1200,0 750,0 1300,0
Q9000D ، Q8000D 825,0 12,5 1100,0 850,0 1362,5
Q9000M 712,5 12,5 1200,0 850,0 1300,0
ضرب (به عنوان مثال Fid) برای PSV نوشته شده است که 8 بیت به سمت چپ منتقل شده است ، با کمترین مقدار شش بیت توسط Vid اشغال شده است. زیرا در مورد ما ، می توان بقیه بیت ها را نادیده گرفت ، سپس PSV ، فرکانس پردازنده ، گذرگاه سیستم و ولتاژ فیزیکی با یک فرمول ساده مرتبط هستند (برای Pentium M):
حال بیایید به ثبت کنترل (PERF_CTL) نگاهی بیندازیم. نوشتن برای آن باید به صورت زیر انجام شود: اول ، مقدار فعلی خوانده می شود (کل کل 64 بیتی) ، بیت های لازم در آن تغییر می یابد و دوباره به ثبت می رسد (اصطلاحاً خواندن-اصلاح-نوشتن) .

PERF_CTL ساختار ثبت

struktur msr_perf_ctl (بدون امضا psv: 16؛ / * درخواست PSV * / امضا نشده _ reservation1: 16؛ امضا نشده ida_diseng: 1؛ / * IDA جدا * / امضا نشده reserv2: 31؛)؛
بیت لغو IDA (Intel Dynamic Acceleration) به شما امکان می دهد کنترل فرکانس فرصت طلبانه پردازنده های Intel Core 2 Duo T7700 و نسخه های بعدی را به طور موقت غیرفعال کنید - باز هم ، ما علاقه ای نداریم. کم 16 بیت (PSV) - حالتی که ما از پردازنده می خواهیم سوئیچ کند.

_ جدول PSS

جدول _PSS مجموعه ای از حالات است ( بسته بندی در اصطلاحات ACPI) یا روشی که چنین آرایه ای را برمی گرداند. هر حالت P به نوبه خود توسط ساختار زیر تعریف می شود (ص 409 مشخصات ACPI):

Struct Pstate (CoreFrequency بدون امضا؛ / * فرکانس کاری هسته CPU ، مگاهرتز * / توان بدون امضا؛ / * حداکثر اتلاف توان ، mW * / تأخیر بدون امضا؛ / * تأخیر بدترین حالت در دسترس نبودن پردازنده در حین انتقال ، μs * / بدون امضا BusMasterLatency؛ / * تأخیر بدترین حالت در حالی که Bus Masters قادر به دسترسی به حافظه نیست ، μs * / کنترل بدون علامت ؛ / * مقداری برای نوشتن در PERF_CTL برای تغییر وضعیت به این حالت * / وضعیت بدون امضا ؛ / * مقدار (باید برابر با مقدار خوانده شده باشد از PERF_STATUS) * /) ؛
بنابراین ، هر حالت P با برخی از فرکانس های عملکرد هسته ، حداکثر توان اتلاف شده ، تاخیرهای عبور (در واقع ، این زمان انتقال بین حالت هایی است که CPU و حافظه در دسترس نیستند) مشخص می شود ، در نهایت جالبترین: PSV ، که با این حالت مطابقت دارد و برای رفتن به این حالت باید در PERF_CTL نوشته شود (Control). برای تأیید اینکه پردازنده با موفقیت وارد حالت جدید شده است ، ثبت نام PERF_STATUS را بخوانید و آن را با مقداری که در قسمت وضعیت نوشته شده مقایسه کنید.

درایور EST سیستم عامل ممکن است در مورد برخی پردازنده ها "بداند" ، یعنی. بدون پشتیبانی ACPI قادر به مدیریت آنها خواهد بود. اما این امر نادر است ، مخصوصاً امروزه (اگرچه برای کم کاری "و در لینوکس ، جایی قبل از 2.6.20 ، شما باید جداول را در درایور وصله کنید ، و در سال 2011 این روش کاملاً معمول بود).

لازم به ذکر است که درایور EST حتی در غیاب جدول _PSS و پردازنده ناشناخته نیز می تواند کار کند. مقادیر حداکثر و حداقل را می توان از PERF_STATUS یافت (در این مورد ، بدیهی است ، تعداد حالتهای P به دو تقسیم می شود).

نظریه کافی است. با همه اینها چه باید کرد؟

اکنون که می دانیم 1) هدف همه بیت ها در کلمات ضروری MSR ، 2) نحوه دقیق رمزگذاری PSV برای پردازنده ما ، و 3) جایی که در DSDT برای جستجوی تنظیمات لازم ، زمان آن است که یک جدول فرکانس ایجاد کنیم و ولتاژ پیش فرض... بیایید DSDT را ریخته و در آنجا به دنبال جدول _PSS بگردیم. برای پنتیوم M 780 باید چیزی شبیه به این باشد:

مقادیر پیش فرض _PSS

نام (_PSS ، بسته بندی (0x06) (// در کل 6 حالت (حالت P) تعریف شده است بسته (0x06) (0x000008DB ، // 2267 مگاهرتز (cf. Fid × ساعت FSB) 0x00006978 ، // 27000 mW 0x0000000A ، // 10 میکروثانیه (مطابق با مشخصات) 0x0000000A ، // 10 µs 0x0000112B ، // 0x11 \u003d 17 (ضرب ، Fid) ، 0x2b \u003d 43 (Vid) 0x0000112B) ، بسته (0x06) (0x0000074B ، // 1867 مگاهرتز (82 ٪ حداکثر) 0x000059D8 ، // 23000 مگاوات 0x0000000A ، 0x0000000A ، 0x00000E25 ، // Fid \u003d 14 ، Vid \u003d 37 0x00000E25) ، بسته (0x06) (0x00000640 ، // 1600 مگاهرتز (71٪ حداکثر) 0x00005208 ، // 21000 مگاوات 0x0000000A ، 0x0000000A ، 0x00000C20 ، // Fid \u003d 12 ، Vid \u003d 32 0x00000C20) ، بسته (0x06) (0x00000535 ، // 1333 مگاهرتز (59٪ حداکثر) 0x00004650 ، // 18000 مگاوات 0x0000000A ، 0x0000000A ، 0x0000000A ، 0x00000000A ، 0x00000000A ، 0x0000000A Fid \u003d 10 ، Vid \u003d 28 0x00000A1C) ، بسته (0x06) (0x0000042B ، // 1067 مگاهرتز (47٪ حداکثر) 0x00003E80 ، // 16000 مگاوات 0x0000000A ، 0x0000000000 ، 0x00000817 ، // Fid \u003d 8 ، Vid \u003d 23 0x00000817) ، بسته (0x06) (0x0 0000320 ، // 800 مگاهرتز (35٪ حداکثر) 0x000032C8 ، // 13000 مگاوات 0x0000000A ، 0x0000000A ، 0x00000612 ، // Fid \u003d 6 ، Vid \u003d 18 0x00000612))))


بنابراین ، ما Vid پیش فرض را برای هر سطح P می دانیم: 43 ، 37 ، 32 ، 28 ، 23 ، 18 ، که مربوط به ولتاژهای 1388 میلی ولت تا 988 میلی ولت است. ماهیت کم ولتاژ این است که این ولتاژها کمی بیشتر از حد واقعی است که برای عملکرد پایدار پردازنده لازم است. بیایید سعی کنیم "حد مجاز" را تعیین کنیم.

من یک اسکریپت پوسته ساده برای این نوشتم که Vid را به تدریج پایین می آورد و یک حلقه ساده را انجام می دهد (البته دایمون powerd (8) قبل از این باید ناخن زده شود). بنابراین ، ولتاژهایی را تعیین کردم که اجازه می دهد حداقل پردازنده قطع نشود ، سپس آزمون Super Pi را اجرا کردم و هسته را چندین بار بازسازی کردم. بعداً ، مقدار Vid را برای دو فرکانس حداکثر یک امتیاز بیشتر کردم ، در غیر این صورت gcc به دلیل خطای دستورالعمل غیرقانونی ، گاهاً خراب می شود. در نتیجه همه آزمایشات طی چندین روز ، ما مجموعه Vid "پایدار" زیر را بدست آوردیم: 30 ، 18 ، 12 ، 7 ، 2 ، 0.

تجزیه و تحلیل نتایج

اکنون که حداقل ولتاژهای ایمن را به صورت تجربی تعیین کردیم ، مقایسه آنها با ولتاژهای اصلی جالب است:
کاهش حداکثر ولتاژ حتی تا 15٪ نیز نتایج کاملاً ملموسی را به همراه داشت: بار طولانی مدت نه تنها منجر به گرم شدن بیش از حد پردازنده و خاموش شدن اضطراری نمی شود ، به طور کلی دما تقریباً هرگز از 80 درجه سانتیگراد فراتر نمی رود. عمر باتری پیش بینی شده در حالت "دفتر" ، با توجه به acpiconf -i 0 ، از 1 ساعت 40 متر به 2 ساعت 25 متر افزایش یافته است (نه چندان زیاد ، اما سلول های یون لیتیوم با گذشت زمان "خسته" می شوند ، و من از هفت سال پیش که لپ تاپ را خریداری کردم باتری را عوض نکردم.)

اکنون باید اطمینان حاصل کنیم که تنظیمات به طور خودکار اعمال می شوند. به عنوان مثال می توانید درایور cpufreq (4) را تغییر دهید تا مقادیر PSV از جدول خودش گرفته شود و نه از طریق ACPI. اما این ناراحت کننده است ، فقط به این دلیل که هنگام به روزرسانی سیستم باید به خاطر داشته باشید که باید درایور را وصله دهید - این بیشتر شبیه یک هک کثیف است تا یک راه حل. احتمالاً هنوز هم می توانید به نوعی powerd (8) را وصله بزنید ، که به همین دلایل بد است. شما می توانید به راحتی اسکریپت را اجرا کنید ، ولتاژ را با نوشتن مستقیم به MSR کاهش دهید (که در واقع ، من این کار را برای تعیین ولتاژ "پایدار" انجام دادم) ، اما پس از آن باید به خاطر بیاورید و به طور مستقل انتقال بین حالت ها را انجام دهید (نه تنها P - به طور کلی ، هر حالت ، به عنوان مثال ، هنگامی که لپ تاپ از خواب بیدار می شود). این هم چنین نیست.

اگر مقادیر PSV را از طریق ACPI بدست آوریم ، منطقی است که جدول _PSS را در DSDT تغییر دهیم. خوشبختانه ، لازم نیست که برای این کار با BIOS سر و صدا کنید: FreeBSD قادر است DSDT را از یک فایل بارگیری کند (در مورد تغییر جداول ACPI در Habré قبلاً ، بنابراین اکنون به طور کامل در این مورد صحبت نمی کنیم) قسمتهای مورد نیاز را در DSDT جایگزین کنید:

پچ کم فشار برای _PSS

-7385.8 +7385.80x00006978 ، 0x0000000A ، 0x0000000A ، - 0x0000112B ، - 0x0000112B + 0x0000111D ، + 0x0000111D) ، بسته (0x06)-7395.8 +7395 ،000000000000000000000000000000000000000 0x00000E12 ، + 0x00000E12) ، بسته (0x06)-7405.8 +7405.80x00005208 ، 0x0000000A ، 0x0000000A ، - 0x00000C20 ، - 0x00000C00C + 0x00000) 0x06) 0@00x00000000 @ 0x0000000000000000000، - 0x00000A1C + 0x00000A07 ، + 0x00000A07) ، بسته بندی (0x06)-7425.8 +7425.80x00003E80 0x0000000AA ، 0x0000000000A ، - 0x00000817 ، - 0x00000817 + 0x000008080 @ 0x00000802 ، + 0x000000002 (0x00000802) ، + 0x00000817 + 0x00000802 (0x00000A07) @ 0x000032C8 ، 0x0000000A ، 0x0000000A ، - 0x00000612 ، + 0x00000612)))


یک پرونده جدید AML (کد byt کد ACPI) کامپایل کنید و /boot/loader.conf را تغییر دهید تا FreeBSD به جای پرونده پیش فرض ، DSDT اصلاح شده ما را بارگیری کند:

Acpi_dsdt_load \u003d "بله" acpi_dsdt_name \u003d "/ root / undervolt.aml"
به طور کلی ، این همه است. فقط به یاد داشته باشید که در صورت تغییر پردازنده ، این دو خط را در /boot/loader.conf توضیح دهید.

حتی اگر قرار نیست ولتاژهای اسمی را کاهش دهید ، توانایی تنظیم مدیریت حالت های پردازنده (نه تنها P-state) به درد شما می خورد. در واقع ، اغلب اتفاق می افتد که "منحنی" BIOS جداول را به طور نادرست ، ناقص یا پر نمی کند (به عنوان مثال ، زیرا سلرون از EST پشتیبانی نمی کند و سازنده رسماً جایگزینی آن را تأمین نمی کند). در این صورت شما مجبورید همه کارها را خودتان انجام دهید. توجه داشته باشید که افزودن جدول _PSS به تنهایی ممکن است کافی نباشد. به عنوان مثال ، دولت های C توسط جدول _CST مشخص شده اند ، و علاوه بر این ، ممکن است لازم باشد که روش های کنترل (عملکرد عملکرد ، _PCT) خود توصیف شوند. خوشبختانه ، این ساده و کاملاً دقیق است ، با مثالهایی که در فصل هشتم مشخصات ACPI شرح داده شده است.

کم کاری در GNU / Linux

حقیقت را بگویم ، در ابتدا فکر کردم که کافی است راهنمای Gentoo Undervolting را بخوانم و فقط آن را برای FreeBSD تطبیق دهم. معلوم شد که این کار چندان آسان نبود ، زیرا این سند بسیار احمقانه ای به نظر می رسید (که در واقع برای ویکتوریا جنتو عجیب است). متأسفانه ، من چیزی مشابه در سایت جدید آنها پیدا نکردم ، من مجبور شدم به یک نسخه قدیمی اکتفا کنم. و اگرچه من می فهمم که این راهنما اهمیت خود را از دست داده است ، اما من کمی از آن انتقاد خواهم کرد. :-)

به دلایلی ، به دلایلی ، بلافاصله ، بدون اعلام جنگ ، به آنها پیشنهاد می شود تا هسته را وصله بزنند (در FreeBSD ، برای یک دقیقه ، ما هیچ سیستمی نداریم کد لازم نبود اصلاح شود). برای چکش زدن در داخل راننده یا نوشتن مقادیر ولتاژ "ایمن" در برخی از اسکریپت های اولیه ، مشخص نیست که توسط چه کسی و چگونه آنها از یک جدول خاص (که در آن Pentium M 780 به طعنه توسط یک خطی که فقط از علامت سوال تشکیل شده است). از توصیه هایی پیروی کنید ، برخی از آنها توسط افرادی نوشته شده اند که به وضوح نمی فهمند که در مورد چه چیزی صحبت می کنند. و مهمتر از همه ، کاملاً نامشخص است که چرا و چگونه دقیقاً این تعویض های جادویی برخی از اعداد برای دیگران کار می کنند. هیچ راهی برای "لمس" EST قبل از وصله و بازسازی هسته وجود ندارد ، و هرگز از رجیسترهای MSR نام نبرید و از خط فرمان با آنها کار نکنید. اصلاح جداول ACPI به عنوان گزینه جایگزین و ترجیحی در نظر گرفته نمی شود.

Makos کاملاً با ACPI تعامل دارد (و انتظار دارد که به درستی کار کند) و تغییر جداول یکی از روشهای اصلی پیکربندی آن برای یک سخت افزار خاص است. بنابراین ، اولین چیزی که به ذهن شما خطور می کند این است که DSDT خود را به همان روش ریخته و وصله کنید. روش جایگزین: google: //IntelEnhancedSpeedStep.kext مانند یک ، دو ، سه.

یکی دیگر از ابزارهای "شگفت انگیز" (خوشبختانه از گذشته منسوخ شده) امکان تغییر ولتاژ و فرکانس را با قیمت 10 دلار ارائه می دهد. :-)

اغلب اتفاق می افتد که لپ تاپ در حین کار بسیار گرم می شود. گاهی اوقات این گرمایش می تواند نه تنها به احساسات ناخوشایند منجر شود (بلکه همه از کار با لپ تاپ داغ خوشحال نیستند) بلکه یخ می زند یا به "صفحه های آبی مرگ" منجر می شود.

این گزینه نه تنها نیاز به مهارت و دانش خاصی از کاربر دارد ، بلکه می تواند ضمانت نامه لپ تاپ را نیز باطل کند. نحوه انجام این کار در این ماده شرح داده شده است: جایگزینی پردازنده - ولتاژ پردازنده را کاهش دهید. این روش ساده ترین و م mostثرترین روش است. به شما امکان می دهد تا دما را 10-30 درجه کاهش دهید.

همانطور که مشاهده می کنید ، بهینه ترین راه حل برای مشکل گرم شدن ، کاهش ولتاژ پردازنده است. بگذارید ماهیت آن را توضیح دهم: مقدار گرمای تولید شده توسط پردازنده متناسب با مربع ولتاژ تغذیه است. در نتیجه ، کاهش نسبتاً کم ولتاژ منبع تغذیه می تواند منجر به کاهش قابل توجهی در تولید گرما و مصرف برق شود. برای نشان دادن این موضوع ، من پیشنهاد می کنم با نتایج مطالعه آشنا شوم:

Core 2 Duo T7300 2.0 GHz1.00B

Core 2 Duo T7300 2.0 GHz1.25B

این دو عکس از صفحه نمایش حداکثر دمای پردازنده Core 2 Duo T7300 را نشان می دهد که پس از سی دقیقه "گرم شدن" با ابزار S&M در لپ تاپ Acer Aspire 5920G نصب شده است. در حالت اول ، پردازنده با ولتاژ تغذیه 1.25 ولت و در حالت دوم با ولتاژ تغذیه 1.00 ولت کار می کند. نظرات زائد است. تفاوت در حداکثر درجه حرارت 24 درجه است و این بدان معناست که در حالت اول ، فن خنک کننده لپ تاپ با حداکثر سرعت کار می کند و در طول آزمایش ، محافظت از پردازنده در برابر گرما باعث می شود (این را می توان از جهش دما به توقف اضطراری برنامه S&M)

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

اکنون می توانید مستقیماً به کاهش ولتاژ پردازنده بپردازید. برای این کار ما به یک برنامه کاربردی نیاز داریم. با استفاده از یکی از این پیوندها می توانید آن را بارگیری کنید: (gcontent) بارگیری RMClock (/ gcontent)

برای ویندوز ویستای 64 بیتی ، یک مشکل امضای دیجیتال برای درایور RTCore64.sys وجود دارد. برای جلوگیری از چنین مشکلی ، نسخه RMClock را با درایور دارای گواهی قبلاً از این لینک بارگیری کنید: (gcontent) بارگیری (/ gcontent)

نمی توان فرکانس و ولتاژ پردازنده های Intel Celeron M را کنترل کرد ، زیرا از تغییر فرکانس / ولتاژ پویا پشتیبانی نمی کنند (Intel Enhanced Speed \u200b\u200bStep Technology در پردازنده های Intel Celeron M - غیر فعال Intel "y") همچنین RMClock از پردازنده های جدید AMD (مبتنی بر چیپ ست های 780G و قدیمی تر) و Intel Core i3 ، i5 ، i7 و سایر خانواده ها از یک خانواده پشتیبانی نمی کند.

پیکربندی ساده این ابزار برای کاربرانی که وقت / میل / تجربه برای تنظیم دقیق آن را ندارند.

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

توجه: در این ماده ، تنظیمات در محیط ویندوز XP انجام می شود. روش راه اندازی در ویندوز ویستا یکسان است ، به غیر از چند تفاوت ظریف ، که در این مقاله شرح داده شده است: حل مشکلات راه اندازی مجدد و مسدود کردن لپ تاپ

راه اندازی RMClock ساده

بیایید با اجرای برنامه شروع کنیم. به برگه بروید تنظیمات و پارامترها را مانند تصویر تنظیم کنید:

در این برگه ، بارگیری خودکار برنامه را فعال کرده ایم. بیایید به تب بعدی برویم: مدیریت... همانطور که در تصویر نشان داده شده است ، تنظیم کنید:

شایان ذکر است که یک علامت تیک در کنار آن مورد وجود دارد سیستم عامل یکپارچه سازی مدیریت نیرو ابتدا باید آن را بردارید و سپس آن را برگردانید
به برگه بروید تنظیمات پیشرفته پردازنده... اگر پردازنده دارید از اینتل مانند تصویر زیر تنظیم کنید:

بسیار مهم است که در نزدیکی نقطه چاله وجود داشته باشد سیار... بقیه موارد شما ممکن است غیرفعال باشد. ما به آن توجه نمی کنیم

برای پردازنده ها از AMD زبانه تنظیمات پیشرفته پردازنده باید به این شکل باشد:

حالا بیایید به قسمت سرگرم کننده برویم - به تب پروفایل ها... برای پردازنده ها اینتل می تواند به این شکل باشد:

اگر در کنار آن علامت تیک دارید IDA - حذفش کن

توجه: این که علامت کادر را برداریم به معنای کار نکردن فناوری IDA نیست. کار خواهد کرد فقط این است که در این حالت اشکالات کمتری وجود خواهد داشت.

اکنون نحوه تنظیم تنش را توضیح خواهم داد. برای بالاترین ضرب (بدون احتساب) IDA) ولتاژ را روی 1.1000V تنظیم کنید. در مورد من ، این ضریب 10.0X است. اکثر قریب به اتفاق پردازنده ها قادر به کار در این ولتاژ هستند. دوتایی Core 2... اگر لپ تاپ شما بعد از اعمال تنظیمات یخ زد ، این ولتاژ باید به 1.1500 ولت افزایش یابد. برای بالاترین ضریب ، ولتاژ را روی 0.8000-0.8500V تنظیم کنید. این ابزار مقادیر میانی را به خودی خود پایین می آورد. با این تنظیمات ، هنگام کار با برق متناوب ، لپ تاپ با حداکثر فرکانس و هنگام روشن شدن باتری ، با حداقل فرکانس برای صرفه جویی در مصرف بهتر کار می کند.

توجه: به هیچ وجه ولتاژهای بالاتر از 1.4000 ولت را طولانی نکنید !!!

برای لپ تاپ های دارای پردازنده از AMD این برگه به \u200b\u200bاین شکل خواهد بود:

در اینجا ، برای بزرگترین ضریب (در مورد من ، 10.0X است) ولتاژ را روی 1.0000 ولت تنظیم کنید. برای کوچکترین - کوچکترین مقداری که برنامه به شما اجازه می دهد تنظیم کنید.

توجه: اگر ولتاژ بسیار کمی تنظیم کنید ، این بدان معنا نیست که پردازنده روی آن کار می کند. نکته این است که حداقل ولتاژی که پردازنده می تواند در آن کار کند برای هر پردازنده جداً کدگذاری می شود. اگر RMClock روی ولتاژ بسیار کمی تنظیم شود ، پردازنده در حداقل ولتاژ مادربرد کار می کند.

ما به طور مستقیم به تنظیمات نمایه ، به ویژه می رویم صرفه جویی در قدرت.

برای پردازنده ها اینتل به نظر می رسد به این شکل است:

برای پردازنده ها AMD به نظر می رسد به این شکل است:

در اینجا ما علامت گذاری را در نزدیکترین موارد قرار می دهیم. به برگه بروید حداکثر عملکرد.

برای پردازنده ها اینتل به نظر می رسد به این شکل است:

برای پردازنده ها AMD به نظر می رسد به این شکل است:

در این برگه ، علامت گذاری را در کنار پایین ترین نقاط با بیشترین ضریب قرار دهید.
بنابراین RMClock با منافاتی ندارد ویندوز XP - به Properties: منبع تغذیه (شروع -\u003e کنترل پنل -\u003e منبع تغذیه) بروید و نمایه را در پنجره انتخاب نمایه انتخاب کنید مدیریت انرژی RMClock و فشار دهید خوب.

توجه: این مورد برای ویندوز ویستا ضروری نیست.

برای دیدن اینکه پردازنده در چه ولتاژ و فرکانسی کار می کند - به تب بروید نظارت بر

همانطور که مشاهده می کنید ، پردازنده در پرونده من با فرکانس 2000 مگاهرتز ، در ضرب 10.0 و در ولتاژ 1.100 ولت کار می کند. دمای آن 45 درجه است.

احتمالاً همه همین است. اگر می خواهید با این ابزار عمیق تر درک کنید - ادامه مطلب را بخوانید.

توضیحات کامل تنظیم RMClock

در این بخش ، من جزئیات بیشتری در مورد تنظیمات خود برنامه به شما می گویم. بیایید با مشاهده برگه شروع کنیم تنظیمات

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

در زیر تنظیمات آمده است:

  • رنگها - تنظیمات رنگ برای پنجره نظارت.
  • نکات راهنمای اطلاع رسانی بادکنک را نشان دهید - نکات راهنمای اطلاعاتی را در سینی نشان دهید
  • نمایش نکات مهم بادکنک - به عنوان مثال هنگام گرم شدن بیش از حد پیام های مهم را در سینی نشان دهید
  • پنجره برنامه را همیشه در قسمت بالا قرار دهید - پنجره برنامه را در بالای پنجره های دیگر قرار دهید
  • نمایش دکمه برنامه در نوار وظیفه - نمایش دکمه برنامه در نوار وظیفه
  • واحدهای دما - واحدهای دما (درجه سانتیگراد / فارنهایت)

در زیر گزینه های autorun وجود دارد:

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

و در پایین ، گزینه های ورود به سیستم پیکربندی می شوند. چه چیزی و چگونه نظارت شود.

در برگه اطلاعات پردازنده می توانید در مورد پردازنده اطلاعات بیشتری کسب کنید.

نمای این برگه برای سیستم عامل ها بر اساس اینتل و بر اساس AMD می تواند کاملا متفاوت باشد. اول ، من برای سیستم عامل توصیف می کنم اینتل:

در بالای صفحه 3 زبانه وجود دارد پردازنده, چیپ ست و سوزاندن... زبانه ها چیپ ست و سوزاندن آنها مورد توجه عملی خاصی برای ما نیستند ، بنابراین ما آنها را لمس نمی کنیم و پارامترهای پیش فرض را ترک نمی کنیم. اما روی برگه پردازنده بیایید با جزئیات بیشتری ساکن شویم
در بالای آن در بالای کتیبه حفاظت حرارتی خودکار 4 امتیاز ارسال شده است:

  • مانیتور حرارتی 1 را فعال کنید - فعال کنید TM1
  • مانیتور حرارتی 2 را فعال کنید - فعال کنید TM2
  • همگام سازی TM1 روی هسته های پردازنده - هماهنگ سازی TM1 با هسته های پردازنده
  • فعال کردن throttling را فعال کنید - throttling را فعال کنید.
  • با جزئیات بیشتر در مورد اینکه چیست TM1 و TM2 در اسناد پردازنده بخوانید. تمام این فناوری ها در آنجا به درستی توصیف شده اند. به طور خلاصه: آنها برای محافظت از پردازنده در اثر خرابی بیش از حد عمل می کنند. اگر دمای پردازنده به مقدار مشخصی برسد (به طور معمول 94-96 درجه سانتیگراد است) ، پردازنده به حالت مشخص شده در سمت راست زیر کتیبه تغییر می کند هدف حرارتی 2

در پنجره زمان تثبیت انتقال FID / VID زمان تثبیت در حین انتقال از یک حالت پردازنده به حالت دیگر نشان داده شده است.

زیر کتیبه خانواده Intel Core / Core 2 حالت های کم مصرف را افزایش داده است حالت های کم مصرف مختلف پردازنده امکان پذیر است. چی C1E, C2E... در همان اسناد پردازنده شرح داده شده است. در آنجا به شکل صفحه ارائه می شود.

در پایین تب تنظیمات پیشرفته پردازنده 2 نکته جالب وجود دارد:

  • تعامل شتاب دهنده دینامیکی اینتل (IDA) IDA... ماهیت این فناوری به این واقعیت خلاصه می شود که در پردازنده های دارای چندین هسته ، وقتی بار روی یکی از آنها زیاد است ، به یک ضرب بالاتر تبدیل می شود. یعنی اگر برای پردازنده T7300 ضریب اسمی x10 باشد ، در لحظه هایی با بار زیاد روی یک هسته ، آن را با فرکانس 2.2 گیگاهرتز کار می کنیم نه 2.0 گیگاهرتز با ضریب x11 به جای x10.
  • فعال کردن داینامیک تغییر فرکانس FSB (DFFS) - این گزینه فناوری را قادر می سازد DFFS... ماهیت آن به این واقعیت خلاصه می شود که برای کاهش مصرف برق ، فرکانس گذرگاه سیستم از 200 مگاهرتز به 100 مگاهرتز کاهش می یابد.

در زیر نوع پردازنده را انتخاب می کنیم. در مورد ما این است سیار و یک کنه در کنار قرار دهید

حال بیایید ببینیم vladyka چگونه خواهد بود تنظیمات پیشرفته پردازنده برای سیستم های مبتنی بر پردازنده AMD:

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

  • کم مصرف CPU را فعال کنید - حالت صرفه جویی در انرژی پردازنده را فعال کنید
  • کم مصرف Northbridge را فعال کنید - امکان صرفه جویی در انرژی پل شمالی
  • تغییر FID / VID را فعال کنید - امکان تغییر ولتاژ / ضرب را فعال کنید
  • تغییر AltVID را فعال کنید - امکان تغییرات ولتاژ جایگزین را فعال کنید
  • این تنظیمات را هنگام راه اندازی اعمال کنید - این تغییرات را پس از بارگیری سیستم عامل اعمال کنید.
  • اگر روی مثلث سمت راست کتیبه کلیک کنید تنظیمات حالتهای ACPI ، منوی از پیش تعیین شده ظاهر می شود.
  • هنوز سوالاتی وجود دارد که این یا آن علامت تأیید چیست - دستورالعمل های برنامه را بخوانید ، یا مثل همیشه ، با تایپ کردن

حالا بیایید به تب برویم مدیریت

به طور خلاصه ، دلیل این یا آن علامت را توضیح خواهم داد.

روش انتقال حالتهای P: - در این پنجره می توانید روش انتقال از یک حالت P را تنظیم کنید (در واقع ترکیبی از مقدار مشخصی از ضریب و ولتاژ است) به حالت دیگر. دو گزینه وجود دارد - تک مرحله ای - تک مرحله ای (یعنی اگر پردازنده از یک ضریب x6 به x8 تغییر کند ، ابتدا انتقال x6-\u003e x7 و سپس x7-\u003e x8) و چند مرحله ای وجود دارد - چند مرحله ای (از x6 بلافاصله به x8 بدون رفتن به x7)
محاسبه بار چند پردازنده - این پنجره روش تعیین میزان پردازنده را تنظیم می کند (به عنوان مثال برای عملکرد بر اساس تقاضا). تصویر صفحه روشی را نشان می دهد که بارگذاری برابر با حداکثر بارگذاری هر یک از هسته ها باشد.
عملکرد آماده به کار / خواب زمستانی - در اینجا می توانید عملکرد را هنگام ورود به حالت آماده به کار یا خواب زمستانی تنظیم کنید. در عکس صفحه ، گزینه "ترک نمایه فعلی" انتخاب شده است

در زیر پیش فرض های پردازنده ذکر شده است - تنظیمات پیش فرض CPU
بازیابی پیش فرض های پردازنده در مدیریت خاموش است - هنگامی که کنترل RMClock خاموش است به طور پیش فرض از سر بگیرید
در هنگام خروج از برنامه ، پیش فرض های پردازنده را بازیابی کنید - هنگام بستن برنامه RMClock به طور پیش فرض از سر بگیرید

درست زیر کتیبه انتخاب خطاهای CPU می توانید یکی از سه گزینه را انتخاب کنید:

  • حالت P پیش فرض CPU تعریف شده - ولتاژ / ضرب به طور پیش فرض توسط خود پردازنده تعیین می شود
  • حالت P در هنگام راه اندازی پیدا شد - ولتاژ / ضرب به طور پیش فرض در آغاز سیستم عامل یافت می شود
  • حالت P سفارشی - ولتاژ / ضرب بصورت پیش فرض بصورت دستی تنظیم می شود

و اینجا روی یک تیک یکپارچه سازی مدیریت انرژی سیستم عامل را فعال کنید ارزش توجه ویژه ای را دارد. ابتدا باید آن را برداشته و دوباره برگردانید. پس از آن ، شما نیاز به رفتن به پانل کنترل -\u003e منبع تغذیه و طرح قدرت "RMClock Power Management" را در آنجا انتخاب کنید... متناوباً ، می توانید از این ابزار استفاده کنید ایسر ePower یک نمایه را انتخاب کنید مدیریت انرژی RMClock... اگر این کار انجام نشود ، درگیری بین سیستم عامل و برنامه ممکن است ، هنگامی که آنها همزمان فرکانس و ولتاژ پردازنده را به روش خود کنترل می کنند. در نتیجه ، افزایش ولتاژ و فرکانس ثابت امکان پذیر است.

اکنون به قسمت سرگرم کننده بروید: تنظیم ولتاژها. تنظیم ساده مقادیری را ارائه می دهد که احتمالاً متناسب با 90-95 درصد کاربران است. اما عملکرد نشان می دهد که پردازنده ها اغلب می توانند در ولتاژ پایین تر به صورت پایدار کار کنند ، این به معنای تولید گرما و مصرف برق حتی کمتر است ، که در عمل به معنی کاهش گرما و افزایش عمر باتری است.

توجه: تنظیم ولتاژ در نمونه پردازنده Intel Core 2 Duo نشان داده شده است. برای سایر پردازنده ها (از جمله محصولات AMD) ، روش نصب یکسان است. مقادیر دیگر ، تعداد عوامل و البته ولتاژها به سادگی وجود خواهد داشت. در اینجا می خواهم تصور غلط دیگری را از بین ببرم. غالباً کاربران معتقدند که اگر مثلاً T7300 مثل من داشته باشند ، درصد آنها در همان ولتاژهای من کار خواهد کرد. این درست نیست. هر نمونه منفی حداقل مقادیر تنش خود را دارد. این واقعیت که یک درصد از یک مدل خاص در ولتاژ خاصی کار می کند ، به این معنی نیست که درصد دیگری از همان مدل در همان ولتاژ کار می کند. به عبارت دیگر: اگر آنچه را که در تصاویر است قرار دهید ، یک واقعیت نیست که برای شما مفید باشد.

اکنون وظیفه ما تعیین حداقل مقادیر ولتاژ است که پردازنده خاص شما در آن پایدار کار خواهد کرد. برای این کار به ابزار S&M (gcontent) نیاز داریم دانلود S&M (/ gcontent)
من به طور خلاصه برگه را شرح می دهم پروفایل ها:

بالای پنجره 4 پنجره وجود دارد. من توضیح خواهم داد که چرا آنها مورد نیاز هستند. در دو پنجره در سمت چپ زیر برق متناوب جاری ( جریان فعلی) و بوت ( استارت آپ) پروفایل های سیستم هنگامی که لپ تاپ از برق تغذیه می شود ، کمی به سمت راست در زیر باتریجاری ( جریان فعلی) و بوت ( استارت آپ) پروفایل سیستم هنگامی که لپ تاپ شارژ دارد. نمایه ها خود در زیر برگه ها پیکربندی شده اند (دقیقاً در زیر) پروفایل ها) در پایین هنوز یک مد وجود دارد - ... او مسئول تکمیل خودکار ولتاژها است ، یعنی مقدار بالاتر را روی یک فاکتور تنظیم می کند ، مقدار پایین را روی فاکتور دوم قرار می دهد ، وقتی کادر کنار آن نقطه تنظیم شد ، برنامه مقادیر میانی را با روش تنظیم می کند درون یابی خطی.

همانطور که در تصویر می بینید ، هنگام کار با شبکه ، لپ تاپ با فرکانس / ولتاژ تنظیم شده در پروفایل کار می کند حداکثر عملکرد، و هنگامی که لپ تاپ با شارژ باتری کار می کند ، فرکانس و ولتاژ در پروفایل تنظیم می شود صرفه جویی در قدرت

حال بیایید مستقیماً به تعیین حداقل تنشهایی بپردازیم كه سیستم در آنها هنوز پایدار است. برای انجام این کار ، علامت همه کادرها را بردارید ، به غیر از کادر مسئول بالاترین ضرب (بدون شمارش) IDA) به عنوان مثال ولتاژ را روی 1.1000V تنظیم می کنیم (برای AMD شما می توانید از 1.0000 ولت شروع کنید)

به زیر برگه بروید حداکثر عملکرد (این نمایه در حال حاضر فعال است ، لپ تاپ روی شبکه کار می کند)

ضرب خود را با یک علامت مشخص می کنیم و اجرا می کنیم S&M... در اولین راه اندازی ، این ابزار صادقانه به ما هشدار می دهد:

کلیک کردن خوب

حالا بیایید مستقیماً به پیکربندی این ابزار برویم. به برگه بروید 0

ما آزمایشی را انتخاب می کنیم که پردازنده را بیشتر گرم کند. همین کار را روی برگه انجام می دهد 1 (پردازنده دو هسته دارد)

حالا به برگه بروید تنظیمات... ابتدا حداکثر بار پردازنده را تنظیم می کنیم:

مدت زمان آزمایش را بر روی تنظیم کنید طولانی (حدود 30 دقیقه ، برای عادی - 8 دقیقه) و تست حافظه را خاموش کنید

و روی دکمه کلیک کنید شروع به بررسی کنید

در برگه مانیتور کنید می توانید دمای فعلی پردازنده را کنترل کنید:

اگر در حین آزمایش لپ تاپ یخ نزد ، راه اندازی مجدد نشود و "صفحه آبی" نمایش داده نشود ، آن را امتحان داد و می توان ولتاژ را بیشتر کاهش داد. برای این کار به تب بروید پروفایل ها ولتاژ را 0.0500 ولت کاهش دهید:

برنامه را دوباره اجرا کنید S&M... اگر این بار همه چیز خوب پیش رفت ، شما می توانید ولتاژ را پایین بیاورید ... اگر آزمایش ناموفق بود ، ولتاژ باید افزایش یابد. هدف ساده است: ولتاژی را که لپ تاپ توسط آن تست می شود پیدا کنید S&M.
در حالت ایده آل ، شما برای هر ضرب باید چنین ولتاژ پیدا کنید ، اما برای اینکه زمان زیادی از بین نرود - ولتاژی را که تعیین کرده ایم روی حداکثر ضرب تنظیم کنید ، حداقل ضریب (در مورد من 6.0X) حداقل ولتاژ را تنظیم کنید که مادربرد می تواند برای پردازنده شما تنظیم کند (به طور معمول این 0.8-0.9 ولت است) ... و اجازه دهید مقادیر میانی با استفاده از عملکرد پر شوند VID های پایه متوسط \u200b\u200bرا به طور خودکار تنظیم کنید

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

در پایین تنظیمات این نمایه ، پارامترهایی وجود دارد که می توانیم آنها را تغییر دهیم. من به طور خلاصه آنها را توصیف می کنم:

سطح استفاده از پردازنده هدف (٪) - آستانه تعویض ضریب / ولتاژ را تنظیم می کند. انتقال فقط بین آن ضربها و ولتاژهایی انجام می شود که با علامت های علامت گذاری شده در کادر بالا مشخص شده اند. روش اندازه گیری بار پردازنده در تب تعیین می شود مدیریت

فاصله انتقال به بالا - زمانی را تعیین می کند که بار پردازنده باید از آستانه مشخص شده در بالا بیشتر باشد تا از ضربات مشخص شده در بالا به یک ضرب بالاتر برسد.

فاصله انتقال پایین - زمانی را تعیین می کند که بار پردازنده باید کمتر از آستانه مشخص شده در بالا باشد ، تا از ضربات مشخص شده در بالا به یک ضرب پایین تر برسد.

در تنظیمات هر نمایه ، گزینه های trotting وجود دارد - استفاده از throttling (ODCM)... من توصیه نمی کنم آن را روشن کنید ، زیرا در نتیجه ، فرکانس کاهش می یابد و گرمایش افزایش می یابد. همچنین می توانید پارامترهای منبع تغذیه سیستم (زمان خاموش کردن مانیتور ، دیسک ها و ...) را روی برگه مشخص کنید تنظیمات سیستم عامل:

برای فعال کردن یک نمایه عملکرد در صورت تقاضا - باید آن را در ویندوز انتخاب کنید جاری در برگه پروفایل ها

احتمالاً همه همین است.

معرفی

علاقه مندان از نزدیک در مورد قابلیت اورکلاک پردازنده ها نظارت می کنند. آنها وقت زیادی را صرف یافتن پاسخ س questionsالات زیر می کنند: با چه سرعتی می توان پردازنده یا پردازنده را اورکلاک کرد؟ سطح ولتاژ مورد نیاز چقدر است؟ بهترین راه حل خنک کننده چیست؟

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

ولتاژ ، فرکانس ساعت و مصرف برق

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

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

پردازنده های کم ولتاژ

بسیاری از پردازنده های تلفن همراه نسخه های ولتاژ پایین پردازنده های معمولی اندکی اصلاح شده هستند. به عنوان مثال پردازنده های تلفن همراه Intel Core 2 ... مشخصه آنها با مصرف بهینه برق است اما در شرایط قابل مقایسه با عملکرد یکسانی کار می کنند و به اندازه نمونه های رومیزی خود انرژی مصرف می کنند. خط Core 2 Duo T حداکثر مصرف برق 35W ، خط P محدود به 25W TDP و غیره است.

اما پردازنده های کم هزینه رایانه های رومیزی نیز وجود دارد. AMD ارائه می دهد پردازنده های بهینه سازی شده انرژی با پسوند "e" (Phenom II X4 900e ، 905e و Phenom X4 9350e) اینتل خط پردازنده را راه اندازی می کند هسته 2 چهار هسته ای "S" که عملکردی مشابه مدل های استاندارد را ارائه می دهند ، اما به جای 95 وات در بسته حرارتی 65 وات باقی می مانند. در حالی که نسخه های اقتصادی گران ترند ، با تأمین مصرف انرژی کمتر در حالت بیکار و کم بار ، ما را تحت تأثیر قرار داده اند.

خودتان آن را انجام دهید؟

آیا می توان با دستان خود پردازنده را به نسخه اقتصادی تبدیل کرد؟ اورکلاک و اضافه ولتاژ بسیار مشهور شده است ، اما ولتاژ کم چیست؟ ما دو مادربرد MSI را که در اختیار داشتیم ، در اختیار گرفتیم: P45D3 Neo ، که در آن استفاده کردیم یافتن اورکلاک بهینه برای Core 2 Duo اما این بار با پردازنده Core 2 Extreme QX9650 و همچنین یک مدل 790FX-GD70 برای معیارهای AMD Phenom II X4 955 جفت شده است.

سیستم عامل ها: AMD 790FX و Intel P45

برای بررسی افت ولتاژ Phenom II X4 955 ، مادربرد MSI 790FX-GD70 را گرفتیم. این برد بهترین مدل MSI برای Socket AM3 است ، از چیپ ست AMD 790FX استفاده می کند که از آخرین پردازنده های AMD پشتیبانی می کند. این صفحه مجهز به فناوری ATI CrossFireX (به لطف چهار اسلات x16 PCI Express 2.0) و بسیاری از ویژگی های مفید برای علاقه مندان است. سازنده تصمیم گرفت برد را به یک عملکرد اورکلاک سخت افزاری ، یک تنظیم کننده ولتاژ با 4 + 1 مرحله با سوئیچینگ پویا ، و همچنین یک سیستم خنک کننده بزرگ (اما نه بیش از حد) در لوله های گرمایی برای تنظیم کننده های چیپست و ولتاژ مجهز کند. BIOS امکان تنظیم فرکانس حافظه DDR3 تا 2133 MT / s را فراهم می کند. RAID از طریق پل جنوبی SB750 در هر شش پورت SATA 3Gb / s پشتیبانی می شود. پورت های اضافی SATA ، FireWire 400 و دو سوکت 1Gbps اترنت وجود دارد ، نیازی به ذکر کدک صوتی HD 192kHz نیست.

اما این بار بعید است که به چنین مجموعه ای از توابع نیاز داشته باشیم ، زیرا هدف این پروژه صرفه جویی در مصرف انرژی بود. یک تنظیم کننده ولتاژ پنج فاز باید کارآمد باشد ، و هیئت مدیره مشتاق خود دارای اجزای با کیفیتی است که می توانند جاه طلبی ما را برآورده کنند. با این حال ، ما هنوز تا حدی ناامید بودیم که ولتاژ چیپ ست و حافظه نباید زیر مقدار اسمی کاهش یابد. شاید MSI باید این ویژگی را در ویرایش های بعدی BIOS اضافه کند.



برای پردازنده Core 2 Quad در Socket 775 (ما از Core 2 Extreme QX9650 استفاده کردیم) ، مادربرد P45D3 Neo را گرفتیم که عملکرد خوبی در ما داشت تست های اورکلاکینگ بهینه برای Core 2 Duo ... این برد روی چیپست P45 ساخته شده است ، اما این محصولی برای علاقه مندان نیست: شما باید به سه مرحله تنظیم کننده ولتاژ بسنده کنید ، سیستم خنک کننده پیچیده ای در لوله های گرمایی وجود ندارد و فقط چند گزینه عملکردهای استاندارد را تکمیل می کنند از چیپست برای اطلاعات بیشتر در مورد صفحه ، به مقاله "مراجعه کنید Intel Core 2 Duo: تجزیه و تحلیل اورکلاک ، عملکرد و کارایی "اما ما هنوز هم از این برد برای پروژه کاهش ولتاژ خود استفاده می کنیم ، زیرا محصولات دیگر (از جمله Gigabyte X48T-DQ6 و Asus P5Q Deluxe) همچنین گزینه های کاهش ولتاژ را برای سایر اجزا به غیر از پردازنده ارائه نمی دهند.


چگونه استرس را به درستی کاهش دهیم؟

اورکلاکرهای باتجربه می توانند از این بخش صرف نظر کنند ، اما برای همه افراد دیگر ، توصیه می کنیم با برخی از ویژگی های مربوط به کاهش ولتاژ پردازنده آشنا شوید.

افتادن

اولین چیزی که باید بدانید: ولتاژ پردازنده ای که در BIOS تنظیم می شود (به طور خودکار یا توسط کاربر) ممکن است با ولتاژ Vcore که پردازنده در آن کار می کند مطابقت نداشته باشد. در واقع ، BIOS حداکثر ولتاژ پردازنده را تعریف می کند و ولتاژ موثر معمولاً کمتر است. حتی می تواند بسته به شرایط کار پردازنده (به عنوان مثال دما) تغییر کند ، که با تغییر پردازنده از حالت آماده به کار به حالت بارگیری و بالعکس تغییر می کند.

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

اگر از ابزارهایی مانند CPU-Z برای خواندن ولتاژ موثر CPU استفاده می کنید ، سعی کنید ولتاژ مورد نظر را با CoreTemp بررسی کنید - و متوجه خواهید شد که این دو مقدار با هم متفاوت هستند. تفاوت بین ولتاژ تنظیم شده و موثر در حالت آماده به کار "جبران" (Voffset) و اختلاف ولتاژ بین بار بیکار و حداکثر "افت" (Vdroop) نامیده می شود.

بررسی

پردازنده هنگام انتقال از حالت بار به حالت بیکار به حداکثر ولتاژ می رسد ، زیرا ولتاژ هرگز دقیقاً از یک سطح به سطح دیگر نمی رود بلکه سطح را "می پرد" و سپس مساوی می شود. در این "پرش" است که پردازنده به حداکثر ولتاژ مشخص شده می رسد.

به همین دلیل ، بررسی اینکه آیا پردازنده کم ولتاژ تحت بارهای اوج پایدار کار می کند یا نه بسیار آسان است: این Vdroop را تحمیل می کند و ولتاژ کار را پایین می آورد به طوری که کمتر از ولتاژ مشخص شده باشد. ما از Prime95 استفاده کردیم که یک ابزار عالی برای استفاده از پردازنده است. پس از 30 دقیقه عملیات پیک بار بدون اضافه برش ، به این نتیجه رسیدیم که سیستم کم ولتاژ تحت بار پایدار است. این معمولاً به این معنی است که عملکرد حتی در حالت بیکار نیز پایدار خواهد بود ، از آن زمان ولتاژ کمی بالاتر اعمال می شود. اما این حالت در حالت های صرفه جویی در مصرف انرژی مانند Intel SpeedStep که فرکانس (ضرب) و ولتاژ را بیشتر کاهش می دهد اعمال نمی شود. ما همه تست های ولتاژ کم را با فناوری SpeedStep فعال انجام دادیم ، اما این برای فناوری AMD Cool "n" Quiet ضروری نبود زیرا از ولتاژها و فرکانس های اسمی در حالت بیکار استفاده می کند.

طبق معمول ، نتایج اورکلاک یا کاهش ولتاژ ما نباید به عنوان حقیقت نهایی در نظر گرفته شود. همه اینها به خود شما بستگی دارد: شما باید یک سری آزمایشات طولانی را انجام دهید یا این خطر را بپذیرید که سیستم همیشه پایدار نباشد. بله ، و نتایج شما ممکن است کاملاً متفاوت باشد - برای قرار گرفتن در سمت امن بهتر است به تنظیمات محافظه کارانه تری برگردید (یعنی ولتاژ را کمی افزایش دهید). در هر صورت ، پتانسیل صرفه جویی در انرژی همچنان قابل توجه خواهد بود.


پردازنده AMD Phenom II X4 955 از زمان اعلام آن در آوریل 2009 همچنان مدل شاخص این شرکت است. به لطف پشتیبانی از حافظه DDR3 و سرعت کلاک 3.2 گیگاهرتز ، AMD در برخی از تست ها توانست با Intel Core 2 Quad رقابت کند در حالی که پردازنده و پلتفرم ارزان تر هستند. با این حال ، عملکرد Core i7 هنوز از آن دور است.

مدلهای Phenom II X4 در فرکانسهای بین 2.5 تا 3.2 گیگاهرتز در دسترس هستند (نگاه کنید به: صفحه در وب سایت AMD) خط 800 دارای حافظه پنهان 4x 512 KB L2 برای هر هسته و 4 MB حافظه پنهان L3 مشترک است ، در حالی که خط 900 دارای 50٪ حافظه نهان L3 بیشتر است. تمام پردازنده های Phenom II در کارخانه های Globalfoundries با استفاده از فرایند 45 نانومتری DSL SOI برای مصرف کم انرژی و قابلیت های خوب اورکلاک تولید می شوند. جالب است که ببینیم چقدر می توانیم ولتاژ را کاهش دهیم.

تنظیمات خودکار BIOS باعث شد Phenom II X4 955 مطابق CPU-Z از 1.32 ولت کار کند. در همان زمان ، اوج مصرف برق سیستم 216 وات با بار کامل روی پردازنده بود. کاملاً واضح است که جای پیشرفت وجود دارد.

تمام پردازنده های AMD با فناوری Cool "n" Quiet فعال می توانند به 800 مگاهرتز در حالت idle تبدیل شوند ، در حالیکه ولتاژ اسمی هسته به 0.96 ولت کاهش می یابد. همانطور که از جدول خلاصه زیر می بینید ، پردازنده Phenom II در حالت خنک به 0.96 ولت تغییر می کند "n" حالت آرام بدون در نظر گرفتن ولتاژ پردازنده در BIOS. بنابراین ، مصرف برق سیستم در حالت بیکار همیشه یکسان بود: 99 وات. در این حالت هیچ چیز برای بهبود وجود ندارد ، مگر اینکه BIOS شروع به تغییر ولتاژ در حالت آماده به کار کند.

ما سعی کردیم چندین سطح ولتاژ تنظیم کنیم (جدول زیر را ببینید) و حداقل 30 دقیقه با استفاده از معیار Prime95 بار را روی آنها آزمایش کردیم. معلوم شد که ولتاژ اسمی 1.32 ولت می تواند تا 12 درصد به 1.1175 ولت کاهش یابد. در عین حال ، ما مصرف برق سیستم را از 216 به 179 وات کاهش داده ایم که 17.2 درصد افت دارد . بد نیست.

جدول جمع بندی

AMD Phenom II X4 955
ولتاژ بایوس چاقو زدن
خودکار 0.96 ولت * 99 وات 1.32 ولت 216 وات آره
1,3125 0.96 ولت * 99 وات 1.288 ولت 205 وات آره
1,2875 0.96 ولت * 99 وات 1.264 ولت 199 وات آره
1,2625 0.96 ولت * 99 وات 1.24 ولت 196 وات آره
1,2375 0.96 ولت * 99 وات 1.216 ولت 192 وات آره
1,2125 0.96 ولت * 99 وات 1.192 ولت 186 وات آره
1,1875 0.96 ولت * 99 وات 1.168 ولت 181 وات آره
1,175 0.96 ولت * 99 وات 1.152 ولت 179 وات آره
1,1625 0.96 ولت * 99 وات 1.136 ولت 177 وات نه

* توسط Cool "n" Quiet به نمایش گذاشته شده است.


اکنون زمان آن است که Intel Core 2 Quad را در نظر بگیریم. ما از پردازنده Core 2 Extreme QX9650 استفاده کردیم زیرا Core 2 Quad معمولی در اختیار نداشتیم.

خط Core 2 Quad همچنان عملکرد خوبی را در سطح قدرت قابل قبول ارائه می دهد. خطوط Q8000 و Q9000 بر روی طرح 45 نانومتری Yorkfield ساخته شده اند. Q8000 از 4 مگابایت حافظه پنهان L2 استفاده می کند ، در حالی که Q9000 دارای 6 مگابایت یا حتی 12 مگابایت حافظه پنهان L2 است.

تمام پردازنده های چهار هسته ای Core 2 Quad از دو قالب 45 هسته ای 45 هسته ای دو هسته ای Wolfdale جمع شده اند.

وقتی ولتاژ را در BIOS به "Automatic" تنظیم کردیم ، 1.256 ولت از Core 2 Extreme QX9650 دریافت کردیم که منجر به مصرف 185 وات سیستم در بار کامل شد.

ولتاژ دور را نمی توان مستقیم تغییر داد ، بسته به ولتاژ پردازنده ای که تعیین می کنید ، همیشه تعیین می شود. با تنظیمات پیش فرض BIOS ، پس از فعال کردن فناوری SpeedStep ، 1.192 ولت را بدست آوردیم که ضریب را به 6 برابر کاهش داد و سرعت کلاک هسته ای 2.0 گیگاهرتز بود. میزان مصرف برق بیکار 94 وات (به جدول زیر مراجعه کنید) هنوز هم کمتر از مصرف انرژی AMD با CPU 0.96 ولت و 800 مگاهرتز است که عجیب است.

کمترین ولتاژ پایدار 1.072 ولت بود ، که با تنظیم BIOS 1.0785 ولت بدست آوردیم. در بار کامل ، این منجر به کل مصرف برق سیستم فقط 148 وات می شود ، یعنی 20٪ با مصرف 16.3٪ کاهش مصرف برق داریم. کاهش پردازنده ولتاژ هسته ای. مرحله بعدی باید 1.0655 ولت باشد که در آن ثبات خود را از دست دادیم. خوشبختانه ، این منجر به همان نتایج خرابی تحت بار و در حالت آماده به کار شد ، که باعث کاهش ولتاژ بیشتر می شود

ولتاژ بیکار ، ناشی از ولتاژ 1.0785 ولت پردازنده ما ، 0.1008 ولت بود که منجر به مصرف برق بیکار سیستم 87 وات می شود. این پیشرفت کمتر از 11٪ است ، اما به طور رایگان آن را دریافت کرد ، سیستم در آزمایشات پایدار کار می کند.

Intel Core 2 Extreme QX9650
ولتاژ بایوس ولتاژ موثر (وجود ندارد) مصرف انرژی کارآمد (نه.) ولتاژ موثر (بار) مصرف انرژی کارآمد (بار) چاقو زدن
خودکار 1.192 ولت 94 وات 1.25 ولت 185 وات آره
1.1955 ولت 1.128 ولت 93 وات 1.184 ولت 172 وات آره
1.1695 ولت 1.104 ولت 92 وات 1.16 ولت 166 Wt آره
1.1435 ولت 1.008 ولت 91 وات 1.136 ولت 162 وات آره
1.175 ولت 1.048 ولت 90 وات 1.104 ولت 158 Wt آره
1.0915 ولت 1.016 ولت 88 وات 1.08 ولت 151 وات آره
1.0785 ولت 1.008 ولت 87 وات 1.072 ولت 148 وات آره
1.0655 ولت 0.992 ولت 87 وات 1.056 ولت 148 وات نه


سخت افزار سیستم
پردازنده AMD AMD Phenom II X4 955 (حافظه پنهان 45 نانومتر ، 3.2 گیگاهرتز ، 4x 512K L2 و 6 مگابایت L3 ، TDP 125W ، Rev. C2)
پردازنده اینتل Intel Core 2 Extreme QX9650 (45nm ، 3.0GHz ، 12MB L2 Cache ، TDP 130W ، Rev. D0)
مادربرد (سوکت 775) MSI P45D3 Neo-F (Rev. 1.0) ، تراشه: Intel P45، ICH10R، BIOS: 4.2 (2009/02/18)
مادربرد (سوکت AM3) MSI 790FX-GD70 (Rev. 1.0) ، چیپ ست: AMD 790FX ، SB750 ، BIOS: 1.3 (04/01/2009)
حافظه DDR3 2 x 2 GB DDR3-1600 (Corsair TR3X6G-1600C8D 8-8-8-24)
کارت گرافیک Zotac Geforce GTX 260² ، GPU: GeForce GTX 260 (576 مگاهرتز) ، حافظه ویدیویی: 896 مگابایت DDR3 (1998 مگاهرتز) ، 216 پردازنده جریان ، فرکانس سایه زن 1242 مگاهرتز
HDD Western Digital VelociRaptor ، 300 گیگابایت (WD3000HLFS) 10،000 دور در دقیقه ، حافظه نهانگاه SATA / 300 ، 16 مگابایت
درایو Blu-ray LG GGW-H20L ، SATA / 150
منبع تغذیه برق و خنک کننده PC ، Silencer 750EPS12V 750W
نرم افزار و درایورهای سیستم
سیستم عامل Windows Vista Enterprise Version 6.0 x64 Service Pack 2 (Build 6000)
درایور چیپ ست AMD کاتالیست 9.4
Nvidia GeForce Driver GeForce 185.85
درایور چیپ ست اینتل نرم افزار نصب Chipset Ver. 9.1.0.1012
درایورهای ذخیره سازی Intel Matrix Storage Drivers نسخه. 8.8.0.1009


آزمایشات و تنظیمات

آزمایشات و تنظیمات
PCMark Vantage نسخه: 1.00
معیار PCMark
نخست 95 نسخه: 25.7
FFT های بزرگ در محل

نتایج آزمون

ما نمودار نداریم که مصرف برق بیکار AMD Phenom II X4 955 را نشان دهد زیرا ولتاژ پردازنده های AMD تغییر نمی کند. پس از فعال کردن عملکرد Cool "n" Quiet ، پردازنده در حالت بیکار همیشه با سرعت 800 مگاهرتز در 0.96 ولت کار می کند (حداقل در مادربرد MSI 790FX-GD70 ما). بنابراین ، سیستم AMD همیشه در حالت آماده به کار 99 وات مصرف می کند.

نمودار مصرف بیکار یک Core 2 Extreme QX9650 را در تمام سطح ولتاژ آزمایش شده نشان می دهد. با ولتاژ 1.008 ولت ، می توان مصرف برق 87 وات را بدست آورد ، در حالی که در 1.192 ولت ، ولتاژ مصرفی پیش فرض 94 وات است.


صرفه جویی در مصرف برق در کاهش ولتاژ در مورد پردازنده پرچمدار AMD کاملاً قابل توجه بود. ما با ولتاژ اسمی 1.32 ولت شروع به کار کردیم ، که به سیستم حداکثر مصرف 216 وات را می داد ، پس از آن فقط 179 وات را تحت ولتاژ 1.175 ولت دریافت کردیم. صرفه جویی در مصرف برق 37 وات یا 17.2 درصد بود - کاملا قابل توجه ، از آنجا که انرژی صرفه جویی شده برای تأمین انرژی کافی است ، به عنوان مثال ، یک نمایشگر 20 اینچ مدرن!

آیا سیستم اینتل می تواند از 17.2٪ صرفه جویی در مصرف برق در زیر حداکثر بار بگذرد؟ شاید: در این حالت ، حداقل ولتاژ پایدار تحت بار 1.078 ولت به جای 1.255 ولت بود و مصرف برق کل سیستم به جای 185 وات 148 وات بود - 20 درصد کاهش.

مصرف برق و کارایی PCMark

ما عملکرد PCMark Vantage و مصرف برق را در تنظیمات پیش فرض و ولتاژهای بهینه شده برای سیستم های AMD و Intel اندازه گیری کردیم.


در مورد Phenom II X4 955 ، متوسط \u200b\u200bمصرف برق از 157 وات به 141 وات کاهش یافت که 10.2 درصد بهبود یافته است. سیستم Core 2 Extreme QX9650 توانست مصرف برق را از 135W به 117W کاهش دهد ، که با توجه به قدرت پردازش بالاتر از پردازنده برتر AMD که ما استفاده کردیم ، نتیجه چشمگیری است. سیستم اینتل به طور متوسط \u200b\u200b13.1٪ مصرف برق را کاهش داده است.


در نتیجه ، کل انرژی (در وات ساعت) صرف شده در هنگام اجرا نیز کاهش یافت: برای سیستم AMD 11.4٪ و برای سیستم Intel 12.4٪. بد نیست!


سرانجام ، ما نتایج PCMark Vantage را با میانگین مصرف برق دو سیستم (امتیاز عملکرد در هر وات) مرتبط کردیم. به یاد داشته باشید که دو دستگاه عملکرد یکسانی را پس از بهینه سازی فشار ارائه می دهند. سیستم AMD Phenom II X4 955 توانست در معیار PCMark Vantage 11.6٪ بهبود بهره وری انرژی ایجاد کند. سیستم اینتل امتیاز کارایی را 13.8 درصد بهبود بخشید.

نتیجه

ما دو پردازنده سطح بالا از AMD و Intel را بر روی مادربردهای مدرن MSI آزمایش کردیم تا صرفه جویی در انرژی بالقوه ای را که می توان با کاهش ولتاژ پردازنده بدست آورد ، تجزیه و تحلیل کنیم. البته ، ما همچنین قصد داشتیم ولتاژ حافظه یا چیپ ست ها را کاهش دهیم تا صرفه جویی بیشتری داشته باشیم ، اما هیچ یک از مادربردهای بررسی شده اجازه تغییر ولتاژ اجزا را به ما ندادند. ما مادربردهای Asus P6T و Rampage II Gene ، Gigabyte MA790FXT-UD5P و X48T-DQ6 را بررسی کردیم ، اما در پایان برای MSI 790FX-GD70 برای سوکت AM3 و P45D3 Neo برای سوکت LGA775 استقرار یافتیم.

AMD Phenom II X4: 17٪ مصرف برق کمتر ، 11.6٪ راندمان بالاتر

حداکثر مصرف برق تحت بار در حداقل ولتاژ پایداری که در Phenom II X4 955 یافتیم تا 17٪ کاهش یافت. از آنجا که عملکرد بدون تغییر بود ، در معیار PCMark Vantage 11.6٪ بهره وری (عملکرد در هر وات) کسب کردیم. فناوری Cool "n" آرام AMD تا حدودی سرعت تلاش ما برای کاهش ولتاژ را کاهش داد ، زیرا بدون توجه به تنظیم ولتاژ ، همیشه در حالت بیکار به حالت عادی تغییر حالت می دهد. و مصرف برق بیکار همیشه 99 وات بوده است.

Intel Core 2 Extreme: 20٪ مصرف برق کمتر ، 13.8٪ راندمان بالاتر

نتایج حتی در سیستم تست Core 2 Extreme QX9650 ، که در آن مصرف برق تحت حداکثر بار بدون هیچ گونه افت عملکرد 20٪ قابل توجه کاهش یافت ، قابل توجه تر بود. این عملکرد PCMark Vantage را در هر وات تا 13.8٪ بهبود بخشید. از آنجایی که ولتاژ پردازنده اینتل در حالت صرفه جویی در مصرف انرژی SpeedStep به ولتاژ هسته تنظیم شده بستگی دارد ، مصرف برق در حالت بیکار نیز به طور محسوسی کاهش می یابد - فقط به 1.008 ولت. این 8٪ صرفه جویی در انرژی را در حالت آماده به کار می دهد.

آیا ارزش صرفه جویی در مصرف انرژی را دارد؟

ما تحت تحمل افت ولتاژ نسبتاً گسترده تحت تأثیر قرار گرفتیم زیرا انتظار داشتیم مشکلات خیلی زودتر شروع شود. اما سیستم های AMD و Intel نشان داده اند که پردازنده های مدرن می توانند با ولتاژ قابل توجهی پایین کار کنند. ما توانستیم 16 درصد ولتاژ کمتری به پردازنده AMD Phenom II X4 و 16.6 درصد ولتاژ کمتری را به پردازنده Intel Core 2 Extreme عرضه کنیم. همه اینها باعث صرفه جویی 17-20٪ تحت اوج بار برای هر دو سیستم می شود.

با این حال ، شما باید اطمینان حاصل کنید که تنظیمات کم ولتاژ شما عملکرد مطمئنی را ارائه می دهد ، بنابراین توصیه می کنیم با احتیاط به این روند نزدیک شوید. با این وجود نیازی به کاهش 16 درصدی ولتاژ نیستید - حتی 10 درصد کاهش نیز باعث کاهش مصرف برق سیستم بدون کاهش عملکرد می شود.