लैपटॉप प्रोसेसर पर वोल्टेज को कैसे समझें। CPU हीट को कम करना और लैपटॉप की बैटरी लाइफ बढ़ाना

इंटेल प्रोसेसर वोल्टेज विनियमन

ध्यान! लेख के लेखक यहां वर्णित कार्यों के आवेदन के परिणामस्वरूप कंप्यूटर को हुए किसी भी नुकसान के लिए कोई जिम्मेदारी नहीं लेते हैं।

कुछ उपयोगकर्ता अधिक भाग्यशाली हैं, अन्य कम। भाग्यशाली लोग हैं जो प्रोसेसर प्राप्त करते हैं जो आसानी से अगले "मानक" एफएसबी आवृत्ति तक ओवरक्लॉक करते हैं: सेलेरॉन 100 तक, और पेंटियम III "ई" - क्रमशः 133 मेगाहर्ट्ज तक के संशोधन। हालांकि, ऐसा प्रोसेसर प्राप्त करना इतना आसान नहीं है: वे बाजारों में उपलब्ध हैं, लेकिन "गारंटीकृत" ओवरक्लॉक किए गए पत्थर के विक्रेता अक्सर इतना चाहते हैं कि वे लगभग उसी के साथ एक प्रोसेसर खरीद सकें, लेकिन "देशी" आवृत्ति, निर्माता द्वारा गारंटी। लेकिन अक्सर आप एक बढ़ी हुई आवृत्ति पर काम करने वाले प्रोसेसर में आते हैं, लेकिन अस्थिर। यही है, अप्रत्याशित विफलताएं दिखाई देती हैं, कार्यक्रम "अस्वीकार्य संचालन करते हैं" और करीब, "ब्लू स्क्रीन" और इसी तरह की प्रसन्नता आंख को प्रसन्न करती है।

इसे अक्सर प्रोसेसर वोल्टेज बढ़ाकर समाप्त किया जा सकता है। क्लासिक सेलेरॉन (मेंडोकिनो कोर पर आधारित; यानी, मॉडल 300A-533) में 2 V का एक मानक कोर वोल्टेज है। सिद्धांत रूप में, इसे बिना किसी जोखिम के 5-10% (2.1 - 2.2 V तक) बढ़ाया जा सकता है। कॉपरमाइन कोर (सेलेरॉन 533A-766 और पेंटियम III) वाले प्रोसेसर पर बिल्कुल यही लागू होता है: केवल निरपेक्ष संख्याएँ बदलती हैं।

हालाँकि, यह अच्छा है यदि आप मदरबोर्ड पर BIOS या जंपर्स का उपयोग करके आवश्यक वोल्टेज स्तर सेट कर सकते हैं, लेकिन क्या होगा यदि ऐसी कोई संभावना नहीं है (जो आमतौर पर सस्ते मदरबोर्ड के बारे में बात करते समय होता है)? वास्तव में, ओवरक्लॉकिंग का मुख्य विचार गायब हो जाता है: सस्ते हार्डवेयर पर बेहतर प्रदर्शन प्राप्त करना। स्लॉट 1 कनेक्टर के साथ मदरबोर्ड पर विशेष एडेप्टर का उपयोग किया जा सकता है, लेकिन यह सॉकेट कार्ड के उपयोगकर्ताओं के लिए आसान नहीं बनाता है (इसके अलावा, कभी-कभी वोल्टेज विनियमन वाले एडेप्टर की कीमत में 5-7 डॉलर का अंतर और इसके बिना एक साधारण मॉडल है नाजुक)। ओवरक्लॉकिंग और सस्ते सॉकेट मॉडल के लिए डिज़ाइन किए गए मदरबोर्ड के बीच कीमत में अंतर $ 30 तक है (इसके अलावा, इनमें से अधिकांश मदरबोर्ड एटीएक्स-प्रारूप हैं, इसलिए कंप्यूटर को अपग्रेड करते समय, आपको केस को बदलना होगा) गैर-मानक तरीके।

हाल ही में, आपूर्ति वोल्टेज को बदलने का विषय न केवल ओवरक्लॉकर के लिए प्रासंगिक हो गया है। तथ्य यह है कि पुराने चिपसेट (एलएक्स, ईएक्स, बीएक्स, जेडएक्स, अपोलो प्रो) पर आधारित मौजूदा बोर्ड अक्सर कम से कम नए सेलेरॉन (कभी-कभी तुरंत, कभी-कभी कुछ संशोधन के बाद) और कभी-कभी पेंटियम III के साथ काम करने में सक्षम होते हैं। बाधा बोर्ड पर वोल्टेज कनवर्टर है, जो 1.8 वी से कम प्रदान करने में असमर्थ है। इस समस्या का पूरी तरह से तार्किक समाधान प्रोसेसर को इस वोल्टेज पर स्विच करने के लिए मजबूर करना है।

एक चेतावनी... यह मत भूलो कि बढ़ते वोल्टेज के साथ, प्रोसेसर द्वारा नष्ट होने वाली शक्ति भी बढ़ जाती है। यह ओवरक्लॉकिंग के लिए विशेष रूप से सच है: प्रोसेसर आवृत्ति में वृद्धि के कारण अतिरिक्त गर्मी उत्पादन भी देखा जाएगा। इसलिए, प्रोसेसर के अच्छे कूलिंग के बारे में पहले से सोचना सार्थक है (हालाँकि, यह किसी भी मामले में किया जाना चाहिए, भले ही वोल्टेज बढ़े या न बढ़े)

पेंटियम II और सेलेरॉन वर्ग के प्रोसेसर को शक्ति प्रदान करने के लिए, बल्कि शक्तिशाली बिजली आपूर्ति की आवश्यकता होती है, इसलिए द्वितीयक कैश की बिजली आपूर्ति (आकृति में Vccs द्वारा चिह्नित) को बिजली की आपूर्ति से कोर (Vccp) तक अलग किया जाता है, और उसी के साथ नाममात्र मान, Vccs लाइन वोल्टेज मानों का उपयोग नहीं किया जाता है। अर्थात्, प्रोसेसर के प्रकार (प्रोसेसर के संगत पैर पर वोल्टेज स्तर पर) के आधार पर, मदरबोर्ड पर स्टेबलाइजर आवश्यक वोल्टेज सेट करता है।

तालिका एक। आपूर्ति वोल्टेज पहचान
वीआईडी वोल्टेज, वी वीआईडी वोल्टेज, वी
01111 1.30 11111 कोई प्रोसेसर नहीं
01110 1.35 11110 2.1
01101 1.40 11101 2.2
01100 1.45 11100 2.3
01011 1.50 11011 2.4
01010 1.55 11010 2.5
01001 1.60 11001 2.6
01000 1.65 11000 2.7
00111 1.70 10111 2.8
00110 1.75 10110 2.9
00101 1.80 10101 3.0
00100 1.85 10100 3.1
00011 1.90 10011 3.2
00010 1.95 10010 3.3
00001 2.00 10001 3.4
00000 2.05 10000 3.5

VID का उपयोग केवल SEPP / SECC संस्करण (Slot1) में किया जाता है, इसलिए सॉकेट 370 के लिए मदरबोर्ड पर वोल्टेज केवल 2.05 V तक बढ़ाया जा सकता है। सभी Intel प्रोसेसर के साथ काम करने के लिए, बोल्ड में मानों के लिए समर्थन की आवश्यकता होती है; एफसीजीए प्रोसेसर के लिए रेखांकित आपूर्ति वोल्टेज चिह्नित हैं।

तालिका 2। कुछ प्रोसेसर को पावर देना
सी पी यू वीसीसीपी, कोर, वी Vccs, नकद, V
पेंटियम II 233-300 (क्लमथ) 2.8 3.3
पेंटियम II 266-450 (डिच्यूट्स) 2.0 2.0
पेंटियम III 450-550 (कटमई) 2.0 3.3
पेंटियम III 600 (कटमई) 2.05 3.3
सेलेरॉन 266-533 (कोविंगटन, मेंडोकिनो) 2.0 -
सेलेरॉन 533A-600
1.5
1.7
-
सेलेरॉन 633-766
1.65
1.7
-

(सेलेरॉन 533A-766 में विभिन्न वोल्टेज के लिए डिज़ाइन किए गए दो संशोधन हैं)

शारीरिक रूप से (0) का अर्थ है कि पैर जमीन से जुड़ा हुआ है (जीएनडी या वीएसएस), और (1) कि पिन मुक्त है, यानी यह किसी भी चीज से जुड़ा नहीं है (पैर पर एक तार्किक इकाई की क्षमता होनी चाहिए) )

इस प्रकार, सेलेरॉन के लिए नियामक आउटपुट को मानक 2 वी नहीं बनाना संभव है (हम उनके बारे में बाद में बात करेंगे), लेकिन कम या ज्यादा (दिलचस्प रूप से, कुछ मामलों में, कम वोल्टेज पर संचालन की स्थिरता में सुधार देखा गया था) .

आंकड़ा सॉकेट प्रोसेसर के लिए पिन दिखाता है। स्लॉट 1 डिज़ाइन में निर्मित प्रोसेसर के लिए, बिजली की आपूर्ति की पहचान के लिए निम्नलिखित पिन जिम्मेदार हैं:

वीआईडी0 वीआईडी1 वीआईडी२ वीआईडी3 वीआईडी4
बी120 ए120 ए119 बी119 ए121

उदाहरण के लिए, यदि आप VID, VID, VID को गोंद करते हैं, तो हमें 2.2 V का वोल्टेज मिलता है। यह किसी भी ओवरक्लॉकिंग प्रेमी के लिए पर्याप्त होना चाहिए, और साथ ही, प्रोसेसर के लिए अच्छे के साथ लंबे समय तक काम करना काफी स्वीकार्य है। कूलिंग :) यानी, कुछ तनाव स्तर प्राप्त करना काफी आसान है जिसके लिए आपको केवल कुछ पैरों को इन्सुलेट करने की आवश्यकता है। उदाहरण के लिए, PPGA और SEPP (Slot1) के लिए:

प्रोसेसर आपूर्ति वोल्टेज के उदाहरण
वोल्टेज, वी किन पैरों को चिपकाने की जरूरत है सिफारिशों
1.80 वीआईडी यदि आप ओवरक्लॉकिंग के प्रशंसक नहीं हैं, तो इस तरह के वोल्टेज का उपयोग ऑपरेशन के दौरान प्रोसेसर के तापमान को कम करने या ऊर्जा बचाने के लिए किया जा सकता है :) (सेलेरॉन नाममात्र आवृत्ति के आधार पर 10-20 डब्ल्यू की खपत करता है, और इससे 10% की बचत होती है) :))
1.90 वीआईडी सामान्य तौर पर, 1.8 V . के लिए भी यही सच है
2.00 मानक वोल्टेज उदाहरण के रूप में दिखाया गया है
2.20 वीआईडी; वीआईडी; वीआईडी प्रोसेसर को बिना किसी समस्या के काम करना चाहिए, सिवाय इसके कि यह गर्म हो जाएगा।
2.40 वीआईडी; वीआईडी; वीआईडी यह काम कर भी सकता है और नहीं भी :) (बल्कि पहले वाला), और और भी गर्म हो जाता है
2.60 वीआईडी; वीआईडी जोखिम काफी अधिक है, लेकिन उत्साही लोग कोशिश कर सकते हैं (यदि वे वास्तव में जितना संभव हो सके प्रोसेसर को ओवरक्लॉक करना चाहते हैं)।
2.80 वीआईडी; वीआईडी; वीआईडी और कोशिश मत करो - यह केवल उदाहरण के लिए दिया गया है।

शेष मूल्यों को प्राप्त करना अधिक कठिन है, क्योंकि प्रोसेसर पर एक मजबूत प्रभाव की आवश्यकता होती है - आपको प्रोसेसर या कनेक्टर के संबंधित संपर्क को जमीन (जीएनडी) से जोड़ना होगा। इसलिए, उदाहरण के लिए, वायरिंग और सोल्डरिंग का उपयोग करके मदरबोर्ड के पीछे स्लॉट (या सॉकेट) VID और GND के पिन को जोड़ने से, हमें 2.05 V का वोल्टेज मिलता है। हालाँकि, यह एक जोखिम भरा ऑपरेशन है, क्योंकि एक के मामले में त्रुटि या गलत सोल्डरिंग, I / O सर्किट (3, 3 B) का वोल्टेज कोर तक पहुंच सकता है, जिससे दुखद परिणाम होंगे। लेकिन इस तरह, आप प्रोसेसर कोर पर तालिका 1 से कोई भी वोल्टेज प्राप्त कर सकते हैं।

दरअसल, पैरों को कैसे गोंदें इसके बारे में। कई विकल्प हैं। सबसे पहले, आप एक टिकाऊ वार्निश लगाकर उन्हें इन्सुलेट कर सकते हैं। यह विधि सामान्य रूप से केवल वास्तव में मजबूत वार्निश के साथ काम करती है, क्योंकि सॉकेट में स्थापित होने पर, प्रोसेसर के पैर बहुत शारीरिक प्रयास का अनुभव करते हैं, जिससे इन्सुलेट परत का विनाश हो सकता है और तदनुसार, एक अनियोजित वोल्टेज स्तर कोर में प्रवेश कर सकता है (उदाहरण के लिए, कंडक्टर इन्सुलेशन VID के उल्लंघन के मामले में 2.2 V के बजाय 2.6)। दूसरे, आप बस उन्हें सॉकेट प्रोसेसर से काट सकते हैं, और स्लॉट प्रोसेसर से, संबंधित कंडक्टरों को काट सकते हैं, लेकिन यह विधि पीछे हटने का कोई मौका नहीं छोड़ती है (यदि कटे हुए कंडक्टर को अभी भी मिलाप किया जा सकता है, तो कटे हुए पैर को टांका लगाना काफी है समस्याग्रस्त)।

सबसे यथार्थवादी, जाहिरा तौर पर, प्रोसेसर के पैरों को चिपकाने वाला विकल्प है। SEPP / SECC पैकेज के मामले में, आप टेप का उपयोग कर सकते हैं, ध्यान से संपर्क पैड के आकार में कटौती कर सकते हैं। प्रोसेसर बोर्ड पर शिलालेख हैं, जिनकी मदद से आप नेविगेट कर सकते हैं कि कौन सा पिन स्थित है। PPGA और FCPGA के मामले में, आप इस विधि का उपयोग कर सकते हैं। फ्लोरोप्लास्टिक या पॉलीइथाइलीन फिल्म (जैसे बैग बनाने के लिए उपयोग किया जाता है) से लगभग 5 मिमी व्यास वाले एक सर्कल को काट दिया जाता है। इसे इसलिए रखा गया है ताकि इसका केंद्र इंसुलेटेड होने वाले संपर्क के ठीक ऊपर हो। फिर, एक सिलाई सुई के साथ, सर्कल के किनारों को लीड के बीच में उतारा जाता है।

स्थापना के दौरान, आमतौर पर कोई समस्या नहीं होती है, हालांकि, सॉकेट से प्रोसेसर को हटाते समय समस्या उत्पन्न हो सकती है: फिल्म अंदर रहती है, और इसे निकालना इतना आसान नहीं होता है (चरम मामलों में, सॉकेट को अलग किया जा सकता है और सब कुछ अनावश्यक से वहां :))

फोटो में VID लेग "तैयार" है

उचित देखभाल और ध्यान के साथ, आवश्यक संचालन करना काफी आसान है।

पेंटियम II और पेंटियम III में आपूर्ति वोल्टेज को बढ़ाने या घटाने के लिए भी वही तरीके उपयुक्त हैं, स्लॉट 1 और एफसीजीए के लिए दोनों संस्करणों में (बेशक, वोल्टेज स्तरों के संबंध में संबंधित परिवर्तनों के साथ)। यह ध्यान में रखा जाना चाहिए कि, क्लैमथ और कॉपरमाइन कोर वाले प्रोसेसर के मामले में, आपूर्ति वोल्टेज बढ़ाने के लिए, टांका लगाने वाले लोहे को लेना आवश्यक है: इस मामले में, बंद किए बिना करना संभव नहीं होगा जमीन के कुछ संपर्क (वोल्टेज 2, 0 वी के लिए डिज़ाइन किए गए कोर के विपरीत)।

इसके अलावा, यह मत भूलो कि मदरबोर्ड पर स्थापित सभी वोल्टेज नियामक बिल्कुल सभी स्तरों का समर्थन नहीं करते हैं। संबंधित माइक्रोक्रिकिट आमतौर पर प्रोसेसर सॉकेट के पास स्थित होता है। इसके अंकन से, आप चिप के निर्माता, और इसके परिणामस्वरूप, इसकी विशेषताओं का पता लगा सकते हैं। वोल्टेज नियामकों का उत्पादन करने वाली कुछ कंपनियों के पते यहां दिए गए हैं:

लेख में "पीटर" द्वारा प्रकाशित मिखाइल हूक "पेंटियम II, पेंटियम प्रो और जस्ट पेंटियम प्रोसेसर्स" की पुस्तक से सामग्री का उपयोग किया गया है, साथ ही सेलेरॉन प्रोसेसर पर इंटेल के आधिकारिक दस्तावेज़ीकरण का भी उपयोग किया गया है।

परिचय

उत्साही प्रोसेसर की ओवरक्लॉकिंग क्षमताओं पर कड़ी नजर रखते हैं। वे निम्नलिखित प्रश्नों के उत्तर खोजने में बहुत समय लगाते हैं: एक या दूसरे प्रोसेसर को कितनी तेजी से ओवरक्लॉक किया जा सकता है? आवश्यक वोल्टेज स्तर क्या है? सबसे अच्छा शीतलन समाधान क्या है?

ओवरक्लॉकिंग आपको सीपीयू के प्रदर्शन को अधिक महंगे प्रोसेसर मॉडल के स्तर तक बढ़ाने की अनुमति देता है, लेकिन विपरीत दिशा भी संभव है। आमतौर पर, आप प्रदर्शन को प्रभावित किए बिना ऑपरेटिंग दक्षता में सुधार करने के लिए प्रोसेसर वोल्टेज को कम कर सकते हैं।

वोल्टेज, घड़ी की आवृत्ति और बिजली की खपत

घड़ी की गति प्रदर्शन को प्रभावित करने वाले सबसे महत्वपूर्ण मापदंडों में से एक है, और आमतौर पर उच्च घड़ी की गति प्राप्त करने के लिए वोल्टेज बढ़ाने की आवश्यकता होती है। डाउनलोड की गई हर चीज को ध्यान में रखते हुए, यह वोल्टेज है जो अंतिम बिजली की खपत में सबसे महत्वपूर्ण भूमिका निभाता है, और घड़ी की आवृत्ति की भूमिका अभी भी माध्यमिक है। घड़ी की आवृत्ति बढ़ने या घटने से बिजली की खपत लगभग प्रत्यक्ष अनुपात में प्रभावित होती है, और वोल्टेज पर निर्भरता द्विघात है। यही कारण है कि घड़ी की आवृत्ति में वृद्धि की तुलना में वोल्टेज में वृद्धि हमेशा बिजली की खपत पर अधिक महत्वपूर्ण प्रभाव डालती है।

बेशक, ऑपरेटिंग वोल्टेज कम होने से बिजली की खपत पर भी काफी असर पड़ता है, इसलिए हमने इस मुद्दे की और गहराई से जांच करने का फैसला किया।

अंडरवोल्टेज प्रोसेसर

कई मोबाइल प्रोसेसर पारंपरिक सीपीयू के थोड़े संशोधित, कम वोल्टेज संस्करण हैं। उदाहरण के लिए मोबाइल इंटेल कोर 2 प्रोसेसर... उन्हें अनुकूलित बिजली की खपत की विशेषता है, लेकिन तुलनीय परिस्थितियों में वे समान प्रदर्शन के साथ काम करेंगे और अपने डेस्कटॉप समकक्षों के रूप में उतनी ही बिजली की खपत करेंगे। कोर 2 डुओ टी लाइन में 35W की अधिकतम बिजली खपत का दावा किया गया है, पी लाइन 25W टीडीपी तक सीमित है और इसी तरह।

लेकिन डेस्कटॉप कंप्यूटरों के लिए कम लागत वाले प्रोसेसर भी हैं। एएमडी ऑफर शक्ति-अनुकूलित प्रोसेसरएक "ई" प्रत्यय के साथ (फेनोम II X4 900e, 905e, और फेनोम X4 9350e) इंटेल ने लॉन्च की प्रोसेसर लाइन कोर 2 क्वाड "एस"जो मानक मॉडल के बराबर प्रदर्शन प्रदान करते हैं, लेकिन 95W के बजाय 65W थर्मल पैकेज के भीतर रहते हैं। जबकि इकॉनमी संस्करण अधिक महंगे हैं, उन्होंने निष्क्रिय और कम लोड होने पर कम बिजली की खपत प्रदान करके हमें बहुत प्रभावित किया।

यह अपने आप करो?

क्या प्रोसेसर को अपने हाथों से एक किफायती संस्करण में बदलना संभव है? ओवरक्लॉकिंग और ओवरवॉल्टेज बहुत लोकप्रिय हो गए हैं, लेकिन अंडरवॉल्टेज के बारे में क्या? हमने अपने पास मौजूद दो MSI मदरबोर्ड को अपने कब्जे में ले लिया: P45D3 Neo, जिसका हमने उपयोग किया था कोर 2 डुओ के लिए इष्टतम ओवरक्लॉकिंग ढूँढनालेकिन इस बार कोर 2 एक्सट्रीम QX9650 प्रोसेसर के साथ जोड़ा गया, साथ ही AMD Phenom II X4 955 बेंचमार्क के लिए 790FX-GD70 मॉडल।

प्लेटफार्म: AMD 790FX और Intel P45

Phenom II X4 955 में वोल्टेज ड्रॉप की जांच करने के लिए, हमने MSI 790FX-GD70 मदरबोर्ड लिया। यह बोर्ड सॉकेट AM3 के लिए MSI का शीर्ष मॉडल है, यह AMD 790FX चिपसेट का उपयोग करता है, जो सभी नवीनतम AMD प्रोसेसर का समर्थन करता है; बोर्ड अति क्रॉसफायरएक्स तकनीक (चार x16 पीसीआई एक्सप्रेस 2.0 स्लॉट के लिए धन्यवाद) और उत्साही लोगों के लिए उपयोगी कई सुविधाओं से लैस है। निर्माता ने बोर्ड को हार्डवेयर ओवरक्लॉकिंग फ़ंक्शन, डायनेमिक स्विचिंग के साथ 4 + 1 चरणों के साथ एक वोल्टेज नियामक, साथ ही चिपसेट और वोल्टेज नियामकों के लिए हीट पाइप पर एक बड़ी (लेकिन अत्यधिक नहीं) शीतलन प्रणाली से लैस करने का निर्णय लिया। BIOS DDR3 मेमोरी फ़्रीक्वेंसी को 2133 MT / s तक सेट करने की अनुमति देता है। RAID SB750 साउथ ब्रिज के माध्यम से सभी छह SATA 3Gb / s पोर्ट पर समर्थित है; 192kHz HD ऑडियो कोडेक का उल्लेख नहीं करने के लिए अतिरिक्त SATA पोर्ट, फायरवायर 400 और दो 1Gbps ईथरनेट सॉकेट हैं।

इस बार, हालांकि, हमें ऐसे कार्यों के सेट की आवश्यकता नहीं है, क्योंकि परियोजना का लक्ष्य ऊर्जा की बचत करना था। एक पांच-चरण वोल्टेज नियामक को कुशल होना चाहिए, और उत्साही बोर्ड स्वयं गुणवत्ता वाले घटकों से भरा हुआ है जो हमारी महत्वाकांक्षा को पूरा करने में सक्षम हैं। हालाँकि, हम अभी भी कुछ हद तक निराश थे कि चिपसेट और मेमोरी के वोल्टेज को नाममात्र मूल्य से कम नहीं किया जाना चाहिए। शायद MSI को इस सुविधा को अगले BIOS संशोधन में जोड़ना चाहिए।



सॉकेट 775 पर कोर 2 क्वाड प्रोसेसर के लिए (हमने कोर 2 एक्सट्रीम QX9650 का इस्तेमाल किया), हमने P45D3 नियो मदरबोर्ड लिया, जिसने हमारे में अच्छा प्रदर्शन किया कोर 2 डुओ के लिए इष्टतम ओवरक्लॉकिंग परीक्षण... बोर्ड P45 चिपसेट पर बनाया गया है, लेकिन यह उत्साही लोगों के लिए एक उत्पाद नहीं है: आपको वोल्टेज नियामक के तीन चरणों से संतुष्ट होना होगा, गर्मी पाइप पर कोई जटिल शीतलन प्रणाली नहीं है, और केवल कुछ विकल्प मानक कार्यों के पूरक हैं। चिपसेट की। बोर्ड के बारे में अधिक जानकारी के लिए लेख देखें " इंटेल कोर 2 डुओ: ओवरक्लॉकिंग, प्रदर्शन और दक्षता का विश्लेषण"लेकिन हमने अभी भी इस बोर्ड का उपयोग हमारे वोल्टेज कम करने की परियोजना के लिए किया है, क्योंकि अन्य उत्पादों (गीगाबाइट X48T-DQ6 और Asus P5Q डीलक्स सहित) ने भी प्रोसेसर के अलावा अन्य घटकों के लिए वोल्टेज में कमी के विकल्प प्रदान नहीं किए हैं।


तनाव को ठीक से कैसे कम करें?

अनुभवी ओवरक्लॉकर इस खंड को छोड़ सकते हैं, लेकिन बाकी सभी के लिए, हम अनुशंसा करते हैं कि आप प्रोसेसर वोल्टेज को कम करने से जुड़ी कुछ ख़ासियतों से परिचित हों।

लटकते

जानने वाली पहली बात: प्रोसेसर वोल्टेज जो BIOS (स्वचालित रूप से या उपयोगकर्ता द्वारा) में सेट किया गया है, वह Vcore वोल्टेज के अनुरूप नहीं हो सकता है जिस पर प्रोसेसर संचालित होगा। वास्तव में, BIOS अधिकतम प्रोसेसर वोल्टेज को परिभाषित करता है, और प्रभावी वोल्टेज आमतौर पर कम होता है। यह प्रोसेसर की परिचालन स्थितियों (उदाहरण के लिए, तापमान) के आधार पर भी बदल सकता है, जो तब बदलता है जब सीपीयू निष्क्रिय मोड से लोड मोड में बदल जाता है और इसके विपरीत।

यह व्यवहार काफी उचित है, क्योंकि सीपीयू लोड के तहत गर्म होने के कारण डाई चालकता में सुधार होता है। यदि वोल्टेज नहीं बदला जाता है, तो करंट बढ़ेगा, यानी करंट और तापमान एक दूसरे को ऊपर उठाएंगे। एक विशेष डूपिंग तंत्र सीपीयू को विद्युत विनिर्देशों के भीतर रखने के लिए लोड के तहत सीपीयू वोल्टेज को थोड़ा कम करता है।

यदि आप प्रभावी CPU वोल्टेज को पढ़ने के लिए CPU-Z जैसे टूल का उपयोग कर रहे हैं, तो CoreTemp के साथ लक्ष्य वोल्टेज की जाँच करने का प्रयास करें - और आप देखेंगे कि दोनों मान भिन्न हैं। निष्क्रिय मोड में सेट और प्रभावी वोल्टेज के बीच के अंतर को "ऑफ़सेट" (Voffset) कहा जाता है, और निष्क्रिय मोड और पीक लोड के बीच वोल्टेज अंतर को "ड्रॉप" (Vdroop) कहा जाता है।

इंतिहान

लोड अवस्था से निष्क्रिय अवस्था में संक्रमण होने पर प्रोसेसर अपने चरम वोल्टेज तक पहुँच जाता है, क्योंकि वोल्टेज कभी भी एक स्तर से दूसरे स्तर तक नहीं जाता है, लेकिन स्तर को "कूदता" है और फिर बराबर करता है। यह इस "कूद" में है कि प्रोसेसर निर्दिष्ट पीक वोल्टेज तक पहुंचता है।

इसी कारण से, यह जांचना काफी आसान है कि अंडरवॉल्टेज प्रोसेसर पीक लोड के तहत स्थिर रूप से काम करेगा या नहीं: यह Vdroop लगाएगा और ऑपरेटिंग वोल्टेज को कम करेगा ताकि यह निर्दिष्ट वोल्टेज से नीचे हो। हमने प्राइम95 का उपयोग किया, जो सीपीयू उपयोग के लिए एक बड़ी उपयोगिता है। ओवरशूटिंग के बिना 30 मिनट के पीक लोड ऑपरेशन के बाद, हमने निष्कर्ष निकाला कि अंडरवॉल्टेज सिस्टम लोड के तहत स्थिर था। इसका आमतौर पर मतलब है कि ऑपरेशन निष्क्रिय मोड में भी स्थिर रहेगा, तब से थोड़ा अधिक वोल्टेज लगाया जाता है। लेकिन यह इंटेल स्पीडस्टेप जैसे बिजली बचत मोड पर लागू नहीं होता है, जो आवृत्ति (गुणक) और वोल्टेज को और कम करता है। हमने सक्रिय स्पीडस्टेप तकनीक के साथ सभी अंडरवॉल्टेज परीक्षण चलाए, लेकिन एएमडी कूल "एन" शांत तकनीक के लिए यह आवश्यक नहीं था क्योंकि यह निष्क्रिय होने पर नाममात्र वोल्टेज और आवृत्तियों का उपयोग करता है।

हमेशा की तरह, हमारे ओवरक्लॉकिंग या वोल्टेज में कमी के परिणामों को अंतिम सत्य के रूप में नहीं लिया जाना चाहिए। यह सब आप पर निर्भर करता है: आपको या तो परीक्षणों का एक विस्तारित सेट आयोजित करने की आवश्यकता है, या इस जोखिम को स्वीकार करना होगा कि सिस्टम हमेशा स्थिर नहीं हो सकता है। हां, और आपके परिणाम पूरी तरह से भिन्न हो सकते हैं - सुरक्षित पक्ष पर रहने के लिए अधिक रूढ़िवादी सेटिंग्स (यानी, वोल्टेज को थोड़ा बढ़ाएं) पर वापस जाना बेहतर हो सकता है। किसी भी मामले में, ऊर्जा बचत की संभावना अभी भी महत्वपूर्ण होगी।


सी पी यू एएमडी फेनोम II X4 955अप्रैल 2009 में अपनी घोषणा के बाद से कंपनी का प्रमुख मॉडल बना हुआ है। DDR3 मेमोरी और 3.2 GHz की घड़ी की गति के समर्थन के लिए धन्यवाद, AMD कुछ परीक्षणों में Intel Core 2 Quad के साथ प्रतिस्पर्धा करने में सक्षम था, जबकि प्रोसेसर और प्लेटफॉर्म दोनों सस्ते हैं। . हालाँकि, Core i7 का प्रदर्शन अभी भी इससे बहुत दूर है।

Phenom II X4 मॉडल 2.5 और 3.2 GHz के बीच आवृत्तियों में उपलब्ध हैं (देखें। एएमडी वेबसाइट पर पेज) 800 लाइन में 4x 512 KB L2 कैश प्रति कोर और 4 MB साझा L3 कैश है, जबकि 900 लाइन में 50% अधिक L3 कैश है। कम बिजली की खपत और अच्छी ओवरक्लॉकिंग क्षमताओं के लिए 45 एनएम डीएसएल एसओआई प्रक्रिया का उपयोग करके ग्लोबलफाउंड्रीज के कारखानों में सभी फेनोम II प्रोसेसर का निर्माण किया जाता है। यह देखना दिलचस्प होगा कि हम वोल्टेज को कितना कम कर सकते हैं।

स्वचालित BIOS सेटिंग्स ने Phenom II X4 955 को CPU-Z के अनुसार 1.32V से काम किया। उसी समय, सीपीयू पर पूरे लोड पर सिस्टम की अधिकतम बिजली खपत 216 डब्ल्यू थी। यह बिल्कुल स्पष्ट है कि परिणाम में सुधार की गुंजाइश है।

सक्रिय कूल "एन" शांत तकनीक वाले सभी एएमडी प्रोसेसर निष्क्रिय मोड में 800 मेगाहर्ट्ज पर स्विच कर सकते हैं, जबकि नाममात्र कोर वोल्टेज 0.96 वी तक गिर जाता है। जैसा कि आप नीचे दी गई सारांश तालिका से देख सकते हैं, फेनोम II प्रोसेसर कूल पर 0.96 वी पर स्विच हो जाता है। "एन" शांत मोड चाहे जो भी सीपीयू वोल्टेज BIOS में सेट किया गया हो। इसलिए, निष्क्रिय मोड में सिस्टम की बिजली की खपत हमेशा समान थी: 99 डब्ल्यू। इस मामले में सुधार करने के लिए कुछ भी नहीं है, जब तक कि BIOS निष्क्रिय मोड में वोल्टेज परिवर्तन की अनुमति देना शुरू न कर दे।

हमने कई वोल्टेज स्तर सेट करने की कोशिश की (नीचे तालिका देखें) और कम से कम 30 मिनट के लिए प्राइम 95 बेंचमार्क का उपयोग करके उन पर लोड का परीक्षण किया। यह पता चला कि 1.32 वी के नाममात्र वोल्टेज को 12% से 1.1175 वी तक कम किया जा सकता है। साथ ही, हमने सिस्टम की बिजली खपत को 216 से घटाकर 179 डब्ल्यू कर दिया है, जो कि 17.2% की गिरावट है। . बुरा नहीं।

सार तालिका

एएमडी फेनोम II X4 955
BIOS वोल्टेज छुरा घोंपना।
ऑटो 0.96 वी * 99 वाट 1.32V 216 वाट हां
1,3125 0.96 वी * 99 वाट १.२८८ वी 205 वाट हां
1,2875 0.96 वी * 99 वाट १.२६४वी 199 वाट हां
1,2625 0.96 वी * 99 वाट 1.24V 196 वाट हां
1,2375 0.96 वी * 99 वाट १.२१६वी १९२ वाट हां
1,2125 0.96 वी * 99 वाट १.१९२ वी १८६ वाट हां
1,1875 0.96 वी * 99 वाट १.१६८वी १८१ वाट हां
1,175 0.96 वी * 99 वाट १.१५२ वी 179 वाट हां
1,1625 0.96 वी * 99 वाट 1.136V 177 वाट नहीं

* कूल "एन" शांत द्वारा प्रदर्शित।


अब इंटेल कोर 2 क्वाड पर विचार करने का समय है। हमने कोर २ एक्सट्रीम क्यूएक्स९६५० प्रोसेसर का इस्तेमाल किया क्योंकि हमारे पास नियमित कोर २ क्वाड नहीं था।

कोर 2 क्वाड लाइन स्वीकार्य शक्ति स्तरों पर ठोस प्रदर्शन देना जारी रखती है। Q8000 और Q9000 लाइनें 45nm यॉर्कफील्ड डिज़ाइन पर बनी हैं। Q8000 4 MB L2 कैश का उपयोग करता है, जबकि Q9000 में 6 MB या 12 MB L2 कैश है।

सभी चार-कोर कोर 2 क्वाड प्रोसेसर दो 45nm दोहरे कोर वोल्फडेल डेज़ से इकट्ठे किए गए हैं।

जब हम BIOS में वोल्टेज को "स्वचालित" पर सेट करते हैं, तो हमें कोर 2 एक्सट्रीम QX9650 से 1.256 V प्राप्त होता है, जिसके परिणामस्वरूप सिस्टम पूर्ण लोड पर 185 वाट की खपत करता है।

निष्क्रिय वोल्टेज को सीधे नहीं बदला जा सकता है, यह हमेशा आपके द्वारा निर्दिष्ट सीपीयू वोल्टेज के आधार पर निर्धारित किया जाएगा। डिफ़ॉल्ट BIOS सेटिंग्स के साथ, हमें स्पीडस्टेप तकनीक को सक्षम करने के बाद 1.192 V मिला, जिसने गुणक को 6x तक कम कर दिया, और कोर घड़ी की गति 2.0 GHz थी। 94W की परिणामी निष्क्रिय बिजली खपत (नीचे तालिका देखें) अभी भी AMD की बिजली खपत से कम 0.96V और 800MHz CPU पर है, जो कि विषम है।

सबसे कम स्थिर वोल्टेज 1.072 वी था, जिसे हमने 1.0785 वी की BIOS सेटिंग के साथ हासिल किया। पूर्ण लोड पर, इसके परिणामस्वरूप केवल 148 डब्ल्यू की कुल सिस्टम बिजली खपत हुई, यानी हमें 16.3% के साथ बिजली की खपत में 20% की कमी मिली। कोर वोल्टेज प्रोसेसर में कमी। अगला कदम १.०६५५ वी होना था, जिस पर हम पहले ही स्थिरता खो चुके थे। सौभाग्य से, यह लोड के तहत और निष्क्रिय मोड में एक ही विफलता के परिणाम का कारण बना, जिसने आगे वोल्टेज में कमी को व्यर्थ बना दिया।

हमारे प्रोसेसर के 1.0785 वी वोल्टेज के परिणामस्वरूप निष्क्रिय वोल्टेज 0.1008 वी था, जिसके परिणामस्वरूप 87 डब्ल्यू की एक प्रणाली निष्क्रिय बिजली की खपत होती है। सुधार 11% से कम है, लेकिन इसे मुफ्त में मिला, सिस्टम ने परीक्षणों में अच्छी तरह से काम किया।

इंटेल कोर 2 एक्सट्रीम QX9650
BIOS वोल्टेज प्रभावी वोल्टेज (अनुपस्थित) कुशल ऊर्जा खपत (नहीं।) प्रभावी वोल्टेज (लोड) कुशल ऊर्जा खपत (भार) छुरा घोंपना।
ऑटो १.१९२ वी ९४ वाट 1.25V १८५ वाट हां
1.1955वी 1.128V 93 वाट १.१८४ वी १७२ वाट हां
1.1695वी 1.104V 92 वाट 1.16V १६६ डब्ल्यूटी हां
1.1435V 1.008वी ९१ वाट 1.136V १६२ वाट हां
1.175V 1.048V 90 वाट 1.104V १५८ वाट हां
1.0915वी 1.016V 88 वाट 1.08V १५१ वाट हां
1.0785V 1.008वी 87 वाट 1.072V १४८ वाट हां
1.0655वी 0.992V 87 वाट 1.056V १४८ वाट नहीं


सिस्टम हार्डवेयर
सीपीयू एएमडी AMD Phenom II X4 955 (45nm, 3.2GHz, 4x 512K L2 और 6 MB L3 कैशे, TDP 125W, Rev. C2)
सीपीयू इंटेल Intel Core 2 एक्सट्रीम QX9650 (45nm, 3.0GHz, 12MB L2 कैशे, TDP 130W, Rev. D0)
मदरबोर्ड (सॉकेट ७७५) MSI P45D3 Neo-F (Rev. 1.0), चिपसेट: Intel P45, ICH10R, BIOS: 4.2 (02/18/2009)
मदरबोर्ड (सॉकेट AM3) MSI 790FX-GD70 (Rev. 1.0), चिपसेट: AMD 790FX, SB750, BIOS: 1.3 (04/01/2009)
DDR3 मेमोरी 2 x 2 GB DDR3-1600 (कॉर्सेर TR3X6G-1600C8D 8-8-8-24)
वीडियो कार्ड Zotac Geforce GTX 260², GPU: GeForce GTX 260 (576 MHz), वीडियो मेमोरी: 896 MB DDR3 (1998 MHz), 216 स्ट्रीम प्रोसेसर, शेडर आवृत्ति 1242 MHz
एचडीडी वेस्टर्न डिजिटल वेलोसिरैप्टर, 300GB (WD3000HLFS) 10,000 RPM, SATA / 300, 16MB कैश
ब्लू-रे ड्राइव एलजी जीजीडब्ल्यू-एच20एल, सैटा / 150
बिजली की आपूर्ति पीसी पावर और कूलिंग, साइलेंसर 750EPS12V 750W
सिस्टम सॉफ्टवेयर और ड्राइवर
ऑपरेटिंग सिस्टम Windows Vista एंटरप्राइज़ संस्करण 6.0 x64 सर्विस पैक 2 (बिल्ड 6000)
एएमडी चिपसेट ड्राइवर उत्प्रेरक 9.4
एनवीडिया GeForce ड्राइवर GeForce 185.85
इंटेल चिपसेट ड्राइवर चिपसेट स्थापना उपयोगिता Ver. 9.1.0.1012
इंटेल स्टोरेज ड्राइवर्स मैट्रिक्स स्टोरेज ड्राइवर्स देखें। 8.8.0.1009


परीक्षण और सेटिंग्स

परीक्षण और सेटिंग्स
पीसीमार्क सहूलियत संस्करण: 1.00
पीसीमार्क बेंचमार्क
प्राइम 95 संस्करण: 25.7
इन-प्लेस बड़े एफएफटी

परीक्षा के परिणाम

हमारे पास एएमडी फेनोम II एक्स4 955 की निष्क्रिय बिजली खपत को दर्शाने वाला ग्राफ नहीं है क्योंकि एएमडी प्रोसेसर का वोल्टेज नहीं बदलता है। कूल "एन" शांत फ़ंक्शन को सक्रिय करने के बाद, प्रोसेसर हमेशा निष्क्रिय होने पर (कम से कम हमारे MSI 790FX-GD70 मदरबोर्ड पर) 0.96 V पर 800 मेगाहर्ट्ज पर चलता है। इसलिए, AMD सिस्टम हमेशा निष्क्रिय मोड में 99W की खपत करता है।

ग्राफ सभी परीक्षण किए गए वोल्टेज स्तरों पर कोर 2 एक्सट्रीम QX9650 की निष्क्रिय बिजली खपत को दर्शाता है। 1.008 वी पर, 87 डब्ल्यू की बिजली खपत प्राप्त की जा सकती है, जबकि 1.192 वी पर डिफ़ॉल्ट बिजली खपत 94 डब्ल्यू है।


एएमडी के फ्लैगशिप प्रोसेसर के मामले में वोल्टेज कम करने से बिजली की बचत काफी महत्वपूर्ण साबित हुई। हमने १.३२ वी के नाममात्र वोल्टेज के साथ शुरुआत की, जिसने सिस्टम को २१६ डब्ल्यू की एक चरम बिजली की खपत दी, जिसके बाद हमें १.१७५ वी के वोल्टेज पर लोड के तहत केवल १७९ डब्ल्यू मिला। बिजली की बचत ३७ डब्ल्यू या १७.२% थी - काफी महत्वपूर्ण चूंकि बचाई गई ऊर्जा बिजली के लिए पर्याप्त होगी, उदाहरण के लिए, 20 "आधुनिक डिस्प्ले!

क्या इंटेल सिस्टम पीक लोड के तहत 17.2% बिजली बचत को पार कर सकता है? हो सकता है: इस मामले में, लोड के तहत न्यूनतम स्थिर वोल्टेज 1.255 वी के बजाय 1.078 वी था, और पूरे सिस्टम की बिजली खपत 185 डब्ल्यू के बजाय 148 डब्ल्यू थी - 20% की कमी।

बिजली की खपत और पीसीमार्क दक्षता

हमने PCMark सहूलियत के प्रदर्शन और बिजली की खपत को डिफ़ॉल्ट सेटिंग्स और AMD और Intel सिस्टम के लिए अनुकूलित वोल्टेज पर मापा।


Phenom II X4 955 के मामले में, औसत बिजली की खपत को 157 वाट से घटाकर 141 वाट कर दिया गया, जो 10.2% का सुधार है। कोर 2 एक्सट्रीम QX9650 सिस्टम बिजली की खपत को 135W से 117W तक कम करने में सक्षम था, जो कि हमारे द्वारा उपयोग किए जाने वाले शीर्ष AMD प्रोसेसर को पार करने वाली प्रसंस्करण शक्ति को देखते हुए एक प्रभावशाली परिणाम है। इंटेल सिस्टम ने औसत बिजली खपत में 13.1% की कमी की है।


नतीजतन, रन पर खर्च की गई कुल ऊर्जा (वाट-घंटे में) में भी कमी आई: एएमडी सिस्टम के लिए 11.4% और इंटेल सिस्टम के लिए 12.4%। बुरा नहीं!


अंत में, हमने PCMark सहूलियत स्कोर को दो प्रणालियों की औसत बिजली खपत (प्रति वाट प्रदर्शन बिंदु) के साथ सहसंबंधित किया। याद रखें कि दो मशीनें तनाव अनुकूलन के बाद समान प्रदर्शन प्रदान करती हैं। AMD Phenom II X4 955 सिस्टम PCMark सहूलियत बेंचमार्क में बिजली दक्षता में 11.6% सुधार देने में सक्षम था। इंटेल सिस्टम ने दक्षता स्कोर में 13.8% सुधार किया।

निष्कर्ष

हमने आधुनिक एमएसआई मदरबोर्ड पर एएमडी और इंटेल से दो हाई-एंड प्रोसेसर का परीक्षण किया ताकि संभावित ऊर्जा बचत का विश्लेषण किया जा सके जो प्रोसेसर वोल्टेज को कम करके प्राप्त किया जा सकता है। बेशक, हमने अतिरिक्त बचत हासिल करने के लिए मेमोरी या चिपसेट पर वोल्टेज कम करने का भी इरादा किया था, लेकिन समीक्षा की गई किसी भी मदरबोर्ड ने हमें घटकों के वोल्टेज को संशोधित करने की अनुमति नहीं दी। हमने आसुस P6T और रैम्पेज II जीन, गीगाबाइट MA790FXT-UD5P और X48T-DQ6 मदरबोर्ड की समीक्षा की, लेकिन अंत में सॉकेट AM3 के लिए MSI 790FX-GD70 और सॉकेट LGA775 के लिए P45D3 Neo पर बस गए।

AMD Phenom II X4: 17% कम बिजली की खपत, 11.6% उच्च दक्षता

फेनोम II X4 955 पर हमें मिले न्यूनतम स्थिर वोल्टेज पर लोड के तहत पीक बिजली की खपत में 17% तक की गिरावट आई है। चूंकि प्रदर्शन अपरिवर्तित था, इसलिए हमें PCMark Vantage बेंचमार्क में 11.6% दक्षता लाभ (प्रति वाट प्रदर्शन) मिला। एएमडी की कूल "एन" शांत तकनीक ने वोल्टेज को कम करने के हमारे प्रयासों को कुछ हद तक धीमा कर दिया, क्योंकि यह वोल्टेज सेटिंग की परवाह किए बिना, निष्क्रिय होने पर हमेशा सामान्य मोड में बदल जाएगा। और निष्क्रिय बिजली की खपत हमेशा 99W रही है।

इंटेल कोर 2 एक्सट्रीम: 20% कम बिजली की खपत, 13.8% उच्च दक्षता

हमारे कोर 2 एक्सट्रीम QX9650 परीक्षण प्रणाली पर परिणाम और भी महत्वपूर्ण थे, जहां पीक लोड के तहत बिजली की खपत बिना किसी प्रदर्शन हानि के प्रभावशाली 20% कम हो गई थी। इसने PCMark Vantage के प्रति वाट के प्रदर्शन में 13.8% तक सुधार किया। चूंकि स्पीडस्टेप पावर सेविंग मोड में इंटेल प्रोसेसर का वोल्टेज सेट कोर वोल्टेज पर निर्भर करता है, निष्क्रिय मोड में बिजली की खपत भी काफी कम हो जाती है - सिर्फ 1.008 वी। इसने निष्क्रिय मोड में 8% ऊर्जा की बचत दी।

क्या यह ऊर्जा बचाने के लायक है?

हम अपेक्षाकृत व्यापक वोल्टेज ड्रॉप सहनशीलता से प्रभावित थे क्योंकि हमें उम्मीद थी कि समस्याएं बहुत पहले शुरू हो जाएंगी। लेकिन एएमडी और इंटेल सिस्टम ने दिखाया है कि आधुनिक प्रोसेसर काफी कम वोल्टेज पर काम कर सकते हैं। हम AMD Phenom II X4 प्रोसेसर में 16% कम वोल्टेज और Intel Core 2 एक्सट्रीम प्रोसेसर में 16.6% कम वोल्टेज लागू करने में सक्षम थे। यह सब दोनों प्रणालियों के लिए पीक लोड के तहत 17-20% की बचत की अनुमति देता है।

हालांकि, आपको यह सुनिश्चित करने की आवश्यकता है कि आपकी अंडरवॉल्टेज सेटिंग्स विश्वसनीय संचालन प्रदान करती हैं, इसलिए हम अनुशंसा करते हैं कि आप इस प्रक्रिया को सावधानी से करें। हालांकि, आपको वोल्टेज में 16% की कमी प्राप्त करने की आवश्यकता नहीं है - यहां तक ​​​​कि 10% की कमी भी प्रदर्शन का त्याग किए बिना सिस्टम की बिजली की खपत को मुफ्त में कम कर देगी।

आधुनिक डेस्कटॉप और (विशेष रूप से) मोबाइल प्रोसेसर में, कई ऊर्जा-बचत तकनीकों का उपयोग किया जाता है: ओडीसीएम, सीएक्सई, ईआईएसटी, आदि। आज हम शायद उनमें से उच्चतम स्तर में रुचि लेंगे: आवृत्ति और वोल्टेज का लचीला नियंत्रण ऑपरेशन के दौरान प्रोसेसर कोर - कूल "एन" शांत, पावरनाउ! AMD से और Intel से एन्हांस्ड स्पीडस्टेप (EIST)।

अक्सर, एक कंप्यूटर या लैपटॉप उपयोगकर्ता को BIOS और / या ऑपरेटिंग सिस्टम में किसी विशेष तकनीक के लिए समर्थन को सक्षम (चेक बॉक्स) करने की आवश्यकता होती है - आमतौर पर कोई ठीक ट्यूनिंग प्रदान नहीं की जाती है, हालांकि, जैसा कि अभ्यास से पता चलता है, यह बहुत उपयोगी हो सकता है। इस लेख में मैं इस बारे में बात करूंगा कि आप ऑपरेटिंग सिस्टम (उदाहरण के लिए, इंटेल पेंटियम एम और फ्रीबीएसडी) से प्रोसेसर कोर के ऑपरेटिंग वोल्टेज को कैसे नियंत्रित कर सकते हैं, और आपको इसकी आवश्यकता क्यों हो सकती है।

बड़ी संख्या में मैनुअल के बावजूद, आप शायद ही ऑपरेटिंग सिस्टम (और अंतिम उपयोगकर्ता नहीं) के दृष्टिकोण से उन्नत स्पीडस्टेप तकनीक का विस्तृत विवरण पाते हैं, विशेष रूप से रूसी में, इसलिए लेख का एक महत्वपूर्ण हिस्सा कार्यान्वयन के लिए समर्पित है विवरण और प्रकृति में कुछ हद तक सैद्धांतिक है।

मुझे उम्मीद है कि यह लेख न केवल फ्रीबीएसडी उपयोगकर्ताओं के लिए उपयोगी होगा: हम जीएनयू / लिनक्स, विंडोज और मैक ओएस एक्स पर भी थोड़ा स्पर्श करेंगे। हालांकि, इस मामले में, विशिष्ट ऑपरेटिंग सिस्टम माध्यमिक महत्व का है।

प्रस्तावना

पिछले साल, मैंने अपने पुराने लैपटॉप में प्रोसेसर को अपग्रेड किया: मैंने मानक 735 के बजाय एक पेंटियम एम 780 स्थापित किया, इसे अधिकतम करने के लिए समाप्त किया, इसलिए बोलने के लिए। लैपटॉप लोड के तहत अधिक गर्म होना शुरू हुआ (गर्मी लंपटता के कारण 10 डब्ल्यू की वृद्धि हुई); मैंने इस पर ज्यादा ध्यान नहीं दिया (सिवाय इसके कि मैंने कूलर को साफ और चिकनाई दी हो), लेकिन एक अच्छा दिन, एक लंबे संकलन के दौरान, कंप्यूटर ... बस बंद हो गया (तापमान एक महत्वपूर्ण सौ डिग्री तक पहुंच गया) . मैं तापमान की निगरानी के लिए सिस्टम चर hw.acpi.thermal.tz0.temperature का मान ट्रे में लाया और, यदि कुछ भी हो, तो समय पर "भारी" कार्य को बाधित करें। लेकिन थोड़ी देर बाद, मैंने अपना गार्ड खो दिया (तापमान हमेशा सामान्य सीमा के भीतर रहा), और सब कुछ दोहराया। उस समय, मैंने फैसला किया कि मैं लंबे समय तक सीपीयू लोड के दौरान लगातार आपातकालीन शटडाउन से डरना नहीं चाहता और Ctrl-C पर अपना हाथ पकड़ना चाहता हूं, या प्रोसेसर को मजबूर करना चाहता हूं।

आमतौर पर, नाममात्र वोल्टेज को बदलने का अर्थ है ओवरक्लॉकिंग (यानी बढ़ी हुई आवृत्ति पर) के दौरान प्रोसेसर के स्थिर संचालन को सुनिश्चित करने के लिए इसे बढ़ाना। मोटे तौर पर, प्रत्येक वोल्टेज मान एक निश्चित आवृत्ति सीमा से मेल खाता है जिस पर वह काम कर सकता है, और ओवरक्लॉकर का कार्य अधिकतम आवृत्ति को खोजना है जिस पर प्रोसेसर अभी तक "छोटी गाड़ी" नहीं है। हमारे मामले में, कार्य कुछ हद तक सममित है: एक ज्ञात आवृत्ति के लिए (अधिक सटीक, जैसा कि हम जल्द ही पता लगाएंगे, आवृत्तियों का एक सेट), सबसे कम वोल्टेज खोजें जो सीपीयू के स्थिर संचालन को सुनिश्चित करता है। मैं ऑपरेटिंग आवृत्ति को कम नहीं करना चाहता, ताकि प्रदर्शन में कमी न हो - लैपटॉप पहले से ही टॉप-एंड से दूर है। इसके अलावा, वोल्टेज कम करें ज्यादा लाभदायक.

थोड़ा सा सिद्धांत

जैसा कि आप जानते हैं, एक प्रोसेसर का उष्मा अपव्यय उसकी क्षमता, आवृत्ति और . के समानुपाती होता है वर्गवोल्टेज (जो सोच रहा है कि ऐसा क्यों है, वे प्रोसेसर को प्राथमिक सीएमओएस इनवर्टर (तार्किक नकारात्मक) के एक सेट के रूप में मानते हुए, या लिंक का पालन करें: एक, दो, तीन) पर निर्भरता प्राप्त करने का प्रयास कर सकते हैं।

आधुनिक मोबाइल प्रोसेसर 50-70 वाट तक की खपत कर सकते हैं, जो अंततः गर्मी में नष्ट हो जाते हैं। यह बहुत कुछ है (तापदीप्त लैंप याद रखें), विशेष रूप से एक लैपटॉप के लिए, जो लोड के तहत स्टैंड-अलोन मोड में उस सुअर संतरे की तरह बैटरी को "खाएगा"। सीमित स्थान की स्थितियों में, सबसे अधिक संभावना है कि गर्मी को सक्रिय रूप से हटाना होगा, जिसका अर्थ है कि कूलर के पंखे (संभवतः कई) को घुमाने के लिए अतिरिक्त ऊर्जा खपत।

स्वाभाविक रूप से, यह स्थिति किसी के अनुरूप नहीं थी, और प्रोसेसर निर्माताओं ने यह सोचना शुरू कर दिया कि बिजली की खपत (और, तदनुसार, गर्मी हस्तांतरण) को कैसे अनुकूलित किया जाए, और साथ ही प्रोसेसर को ओवरहीटिंग से बचाया जाए। रुचि रखने वालों के लिए, मैं दिमित्री बेसेडिन के कई अद्भुत लेखों को पढ़ने की सलाह देता हूं, और इस बीच मैं व्यवसाय में उतर जाऊंगा।

इतिहास का हिस्सा

पहली बार, स्पीडस्टेप तकनीक (संस्करण 1.1) तीसरी पेंटियम की दूसरी पीढ़ी में दिखाई दी (लैपटॉप के लिए 18-माइक्रोन प्रक्रिया प्रौद्योगिकी मोबाइल कॉपरमाइन के अनुसार निर्मित, 2000), जो लोड या कंप्यूटर के पावर स्रोत - नेटवर्क पर निर्भर करता है या बैटरी - एक चर कारक के कारण उच्च और निम्न आवृत्तियों के बीच स्विच कर सकता है। इकोनॉमी मोड में, प्रोसेसर ने लगभग आधी बिजली की खपत की।

13-माइक्रोन तकनीकी प्रक्रिया में संक्रमण के साथ, प्रौद्योगिकी संस्करण संख्या 2.1 प्राप्त करती है और "उन्नत" हो जाती है - अब प्रोसेसर न केवल आवृत्ति, बल्कि वोल्टेज भी कम कर सकता है। संस्करण 2.2 नेटबर्स्ट आर्किटेक्चर के लिए एक अनुकूलन है, और तीसरे संस्करण (सेंट्रिनो प्लेटफॉर्म) द्वारा प्रौद्योगिकी को आधिकारिक तौर पर एन्हांस्ड इंटेल स्पीडस्टेप (ईआईएसटी) कहा जाएगा।

संस्करण 3.1 (2003) पहली बार पेंटियम एम प्रोसेसर (बनियास और दोथन कोर) की पहली और दूसरी पीढ़ी में उपयोग किया जाता है। 100 मेगाहर्ट्ज (बनियास के लिए) या 133 मेगाहर्ट्ज (दोथन के लिए, हमारे मामले) के चरण के साथ आवृत्ति भिन्न (पहले, यह सिर्फ दो मानों के बीच बदल गई) आधार एक के 40% से 100% तक। साथ ही, इंटेल बिजली की खपत को और अधिक अनुकूलित करने के लिए गतिशील एल2 कैश क्षमता प्रबंधन पेश कर रहा है। संस्करण 3.2 (उन्नत EIST) - साझा L2 कैश के साथ बहु-कोर प्रोसेसर के लिए अनुकूलन। (स्पीडस्टेप तकनीक पर इंटेल से एक छोटा सा अक्सर पूछे जाने वाले प्रश्न।)

अब, अंधाधुंध तरीके से और ट्यूटोरियल का अनुसरण करने के बजाय, पीडीएफ "कू" डाउनलोड करें और यह समझने की कोशिश करें कि ईएसटी कैसे काम करता है (मैं इस संक्षिप्त नाम का उपयोग करना जारी रखूंगा, क्योंकि यह अधिक सार्वभौमिक और छोटा है)।

ईएसटी कैसे काम करता है

तो, ईएसटी आपको प्रोसेसर के प्रदर्शन और बिजली की खपत का प्रबंधन करने की अनुमति देता है, और गतिशील, अपने काम के दौरान। पहले के कार्यान्वयन के विपरीत, जिसे प्रोसेसर के ऑपरेटिंग मापदंडों को बदलने के लिए हार्डवेयर समर्थन (चिपसेट में) की आवश्यकता होती है, ईएसटी अनुमति देता है प्रोग्राम के रूप में, अर्थात। BIOS या ऑपरेटिंग सिस्टम का उपयोग करते हुए, लोड, कंप्यूटर बिजली की आपूर्ति के प्रकार, CPU तापमान और / या OS सेटिंग्स (नीति) के आधार पर गुणक (प्रोसेसर आवृत्ति और बस आवृत्ति का अनुपात) और कोर वोल्टेज (V cc) को बदलें। .

ऑपरेशन के दौरान, प्रोसेसर कई राज्यों (पावर स्टेट्स) में से एक में होता है: टी (थ्रॉटल), एस (नींद), सी (निष्क्रिय), पी (प्रदर्शन), कुछ नियमों के अनुसार उनके बीच स्विच करना (एसीपीआई का पी। ३८६) 5.0 विनिर्देश)।

सिस्टम में मौजूद प्रत्येक प्रोसेसर को डीएसडीटी तालिका में वर्णित किया जाना चाहिए, अक्सर \ _PR नामस्थान में, और आमतौर पर कई तरीके प्रदान करता है जिसके माध्यम से ऑपरेटिंग सिस्टम (पीएम ड्राइवर) के साथ बातचीत होती है, और जो प्रोसेसर की क्षमताओं का वर्णन करती है (_PDC, _PPC), समर्थित राज्य (_CST, _TSS, _PSS) और उनका प्रबंधन (_PTC, _PCT)। प्रत्येक सीपीयू के लिए आवश्यक मान (यदि यह तथाकथित सीपीयू सपोर्ट पैकेज में शामिल है) मदरबोर्ड के BIOS "द्वारा निर्धारित किया जाता है, जो संबंधित तालिकाओं और एसीपीआई विधियों (पी। 11 पीडीएफ") में भरता है जब मशीन बूट है।

ईएसटी पी-स्टेट (पी-स्टेट) में प्रोसेसर के काम को नियंत्रित करता है, वे हमारे लिए रुचिकर होंगे। उदाहरण के लिए, पेंटियम एम छह पी-राज्यों का समर्थन करता है (चित्र 1.1 और तालिका 1.6 पीडीएफ "की देखें), वोल्टेज और आवृत्ति में भिन्न:

सामान्य तौर पर, जब प्रोसेसर पहले से ज्ञात नहीं होता है, तो इसके साथ काम करने का एकमात्र कम या ज्यादा विश्वसनीय (और इंटेल द्वारा अनुशंसित) तरीका एसीपीआई है। आप सीधे कमांड लाइन से सहित, एमएसआर (मॉडल-विशिष्ट रजिस्टर) रजिस्टरों के माध्यम से एसीपीआई को दरकिनार करते हुए एक विशिष्ट प्रोसेसर के साथ सीधे बातचीत कर सकते हैं: संस्करण 7.2 से शुरू होकर, फ्रीबीएसडी इसके लिए सीपीयूकंट्रोल (8) उपयोगिता का उपयोग करता है।

आप IA_32_MISC_ENABLE रजिस्टर (0x1A0) में 16वें बिट को देखकर पता लगा सकते हैं कि आपका प्रोसेसर EST का समर्थन करता है या नहीं, इसे सेट किया जाना चाहिए:

# kldload cpuctl # cpucontrol -m 0x1a0 / dev / cpuctl0 | (पढ़ें _ msr हाय लो; इको $ ((लो >> 16 और 1))) 1
GNU / Linux के लिए समान कमांड (msr-tools package आवश्यक):

# modprobe msr # इको ​​$ ((`rdmsr -c 0x1a0` >> 16 और 1)) 1
IA32_PERF_CTL रजिस्टर (0x199) में लिखते समय राज्यों के बीच संक्रमण होता है। आप IA32_PERF_STATUS रजिस्टर (0x198) को पढ़कर वर्तमान ऑपरेटिंग मोड का पता लगा सकते हैं, जिसे गतिशील रूप से अपडेट किया जाता है (टैब। 1.4 pdf "ki)। भविष्य में, मैं संक्षिप्तता के लिए IA32_ उपसर्ग को छोड़ दूंगा।

# cpucontrol -m 0x198 / dev / cpuctl0 MSR 0x198: 0x0612112b 0x06000c20
प्रलेखन से यह निम्नानुसार है कि वर्तमान स्थिति निचले 16 बिट्स में एन्कोडेड है (यदि आप कई बार कमांड निष्पादित करते हैं, तो उनका मान बदल सकता है - इसका मतलब है कि ईएसटी काम करता है)। यदि आप अन्य बिट्स पर करीब से नज़र डालें, तो वे स्पष्ट रूप से कचरा नहीं हैं। गुगल करके, आप पता लगा सकते हैं कि उनका क्या मतलब है।

PERF_STATUS रजिस्टर संरचना

PERF_STATUS से पढ़ा गया डेटा निम्नलिखित संरचना द्वारा दर्शाया गया है (यह मानते हुए कि डेटा को छोटे-एंडियन के रूप में संग्रहीत किया जाता है):

संरचना msr_perf_status (अहस्ताक्षरित curr_psv: 16; / * वर्तमान PSV * / अहस्ताक्षरित स्थिति: 8; / * स्थिति झंडे * / अहस्ताक्षरित min_multi: 8; / * न्यूनतम गुणक * / अहस्ताक्षरित max_psv: 16; / * अधिकतम PSV * / अहस्ताक्षरित init_psv: 16; / * पावर-ऑन पीएसवी * /);
तीन 16-बिट फ़ील्ड तथाकथित प्रदर्शन राज्य मान (PSV) हैं, हम नीचे उनकी संरचना पर विचार करेंगे: वर्तमान PSV मान, अधिकतम (प्रोसेसर पर निर्भर करता है) और सिस्टम की शुरुआत में मान (जब कामोत्तेजित)। ऑपरेटिंग मोड बदलने पर वर्तमान मान (curr_psv) स्पष्ट रूप से बदल जाता है, अधिकतम (max_psv) आमतौर पर स्थिर रहता है, प्रारंभिक मान (init_psv) नहीं बदलता है: एक नियम के रूप में, यह डेस्कटॉप और सर्वर के लिए अधिकतम मान के बराबर है, लेकिन मोबाइल सीपीयू के लिए न्यूनतम। इंटेल प्रोसेसर के लिए न्यूनतम गुणक (min_mult) लगभग हमेशा छह होता है। स्थिति फ़ील्ड में कुछ फ़्लैग का मान होता है, उदाहरण के लिए, जब EST या THERM इवेंट होते हैं (अर्थात, जब P-स्टेट बदलता है या प्रोसेसर क्रमशः ज़्यादा गरम होता है)।

अब जब हम PERF_STATUS रजिस्टर के सभी 64 बिट्स का उद्देश्य जानते हैं, तो हम ऊपर पढ़े गए शब्द को समझ सकते हैं: 0x0612 112b 0x06 00 0c20 PSV प्रारंभ 0x0612, अधिकतम मान 0x112b, न्यूनतम गुणक 6 (उम्मीद के अनुसार), फ़्लैग साफ़ किए गए, वर्तमान PSV मान = 0x0c20। इन 16 बिट्स का वास्तव में क्या मतलब है?

प्रदर्शन राज्य मूल्य (पीएसवी) संरचना

पीएसवी क्या है, यह जानना और समझना बहुत जरूरी है, क्योंकि यह इस रूप में है कि प्रोसेसर ऑपरेटिंग मोड सेट किए जाते हैं।

संरचना psv (अहस्ताक्षरित vid: 6; / * वोल्टेज पहचानकर्ता * / अहस्ताक्षरित _reserved1: 2; अहस्ताक्षरित आवृत्ति: 5; / * आवृत्ति पहचानकर्ता * / अहस्ताक्षरित _reserved2: 1; अहस्ताक्षरित nibr: 1; / * गैर-पूर्णांक बस अनुपात * / अहस्ताक्षरित एसएलएफएम: 1; / * गतिशील एफएसबी आवृत्ति (सुपर-एलएफएम) * /);
डायनेमिक FSB फ़्रीक्वेंसी स्विचिंग हर दूसरी FSB घड़ी को छोड़ने के लिए निर्दिष्ट करती है, अर्थात। ऑपरेटिंग आवृत्ति को आधा करें; यह सुविधा पहली बार कोर 2 डुओ प्रोसेसर (मेरोम कोर) में लागू की गई थी और हमें चिंता नहीं है, साथ ही गैर-पूर्णांक बस अनुपात - कुछ प्रोसेसर द्वारा समर्थित एक विशेष मोड जो अनुमति देता है, जैसा कि नाम से पता चलता है, उनकी आवृत्ति को अधिक सूक्ष्मता से नियंत्रित करने के लिए .

दो क्षेत्रों का ईएसटी तकनीक से ही संबंध है - आवृत्ति पहचानकर्ता (फ़्रिक्वेंसी आइडेंटिफ़ायर, फ़िड), जो संख्यात्मक रूप से गुणक के बराबर है, और वोल्टेज (वोल्टेज आइडेंटिफ़ायर, विद), जो वोल्टेज स्तर से मेल खाती है (जो आमतौर पर है कम से कम प्रलेखित)।

वोल्टेज पहचानकर्ता

इंटेल जानकारी का खुलासा करने के लिए बहुत अनिच्छुक है (आमतौर पर एक एनडीए की आवश्यकता होती है) कि प्रत्येक प्रोसेसर के लिए वोल्टेज आईडी को वास्तव में कैसे एन्कोड किया जाता है। लेकिन अधिकांश लोकप्रिय सीपीयू के लिए, सौभाग्य से, यह सूत्र ज्ञात है; विशेष रूप से, हमारे पेंटियम एम (और कई अन्य) के लिए: V cc = Vid 0 + (Vid × V चरण), जहां V cc वर्तमान (वास्तविक) वोल्टेज है, Vid 0 बेस वोल्टेज है (जब Vid == 0) , वी चरण - चरण। कुछ लोकप्रिय प्रोसेसर के लिए तालिका (मिलीवोल्ट में सभी मान):
सी पी यू वीडियो 0 वी चरण वी बूट वी मिनट वी मैक्स
पेंटियम एम 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 द्वारा कब्जा कर लिए जाते हैं। चूंकि हमारे मामले में, बाकी बिट्स की उपेक्षा की जा सकती है, फिर पीएसवी, प्रोसेसर आवृत्ति, सिस्टम बस और भौतिक वोल्टेज एक साधारण सूत्र (पेंटियम एम के लिए) से संबंधित हैं:
अब आइए नियंत्रण रजिस्टर (PERF_CTL) को देखें। इसे लिखना निम्नानुसार किया जाना चाहिए: सबसे पहले, वर्तमान मूल्य पढ़ा जाता है (पूरे 64-बिट शब्द), इसमें आवश्यक बिट्स को बदल दिया जाता है, और रजिस्टर में वापस लिखा जाता है (तथाकथित रीड-मॉडिफाई-राइट) .

PERF_CTL रजिस्टर संरचना

संरचना msr_perf_ctl (अहस्ताक्षरित पीएसवी: 16; / * अनुरोधित पीएसवी * / अहस्ताक्षरित _reserved1: 16; अहस्ताक्षरित ida_diseng: 1; / * आईडीए छूट * / अहस्ताक्षरित _reserved2: 31;);
आईडीए (इंटेल डायनेमिक एक्सेलेरेशन) डिसेंज बिट आपको इंटेल कोर 2 डुओ टी7700 और बाद के प्रोसेसर पर अस्थायी रूप से अवसरवादी आवृत्ति नियंत्रण को अक्षम करने की अनुमति देता है - फिर से, हमें कोई दिलचस्पी नहीं है। कम 16 बिट्स (PSV) - वह मोड जिसमें हम प्रोसेसर को स्विच करने के लिए "पूछते" हैं।

_पीएसएस तालिका

_PSS तालिका राज्यों की एक सरणी है ( पैकेजएसीपीआई शब्दावली में) या ऐसी विधि जो ऐसी सरणी लौटाती है; प्रत्येक पी-राज्य बदले में निम्नलिखित संरचना (एसीपीआई विनिर्देश के पृष्ठ ४०९) द्वारा परिभाषित किया गया है:

स्ट्रक्चर पस्टेट (अहस्ताक्षरित कोर फ़्रीक्वेंसी; / * कोर सीपीयू ऑपरेटिंग फ़्रीक्वेंसी, मेगाहर्ट्ज * / अहस्ताक्षरित पावर; / * अधिकतम बिजली अपव्यय, mW * / अहस्ताक्षरित विलंबता; / * संक्रमण के दौरान सीपीयू की अनुपलब्धता की सबसे खराब स्थिति, μs * / अहस्ताक्षरित BusMasterLatency; / * सबसे खराब स्थिति विलंबता जबकि बस मास्टर्स मेमोरी तक पहुंचने में असमर्थ हैं, μs * / अहस्ताक्षरित नियंत्रण; / * इस स्थिति में स्विच करने के लिए PERF_CTL को लिखा जाने वाला मान * / अहस्ताक्षरित स्थिति; / * मान (एक पढ़ने के बराबर होना चाहिए) PERF_STATUS से) * /);
इस प्रकार, प्रत्येक पी-राज्य को कोर की कुछ ऑपरेटिंग आवृत्ति, अधिकतम विलुप्त शक्ति, पारगमन देरी (वास्तव में, यह उन राज्यों के बीच संक्रमण का समय है जिसके दौरान सीपीयू और मेमोरी अनुपलब्ध हैं), अंत में, सबसे दिलचस्प: पीएसवी , जो इस राज्य से मेल खाती है और जिसे इस राज्य (नियंत्रण) में जाने के लिए PERF_CTL को लिखा जाना चाहिए। यह सत्यापित करने के लिए कि प्रोसेसर ने सफलतापूर्वक नए राज्य में प्रवेश किया है, PERF_STATUS रजिस्टर पढ़ें और स्थिति फ़ील्ड में लिखे गए मान से इसकी तुलना करें।

ऑपरेटिंग सिस्टम का ईएसटी ड्राइवर कुछ प्रोसेसर के बारे में "जान" सकता है, अर्थात। एसीपीआई समर्थन के बिना उन्हें प्रबंधित करने में सक्षम होंगे। लेकिन यह एक दुर्लभ वस्तु है, विशेष रूप से आजकल (हालांकि अंडरवोल्टिंग के लिए "और लिनक्स पर, संस्करण 2.6.20 से पहले, आपको ड्राइवर में तालिकाओं को पैच करना पड़ता था, और 2011 में यह विधि काफी सामान्य थी)।

यह ध्यान दिया जाना चाहिए कि ईएसटी ड्राइवर _PSS तालिका और अज्ञात प्रोसेसर की अनुपस्थिति में भी काम कर सकता है। PERF_STATUS से अधिकतम और न्यूनतम मान पाए जा सकते हैं (इस मामले में, जाहिर है, पी-राज्यों की संख्या दो में पतित हो जाती है)।

पर्याप्त सिद्धांत। इन सबका क्या करें?

अब जब हम जानते हैं कि 1) वांछित एमएसआर शब्दों में सभी बिट्स का उद्देश्य, 2) हमारे प्रोसेसर के लिए पीएसवी वास्तव में कैसे एन्कोड किया गया है, और 3) जहां डीएसडीटी में आवश्यक सेटिंग्स देखने के लिए, आवृत्तियों की एक तालिका बनाने का समय है और वोल्टेज चूक जाना... आइए DSDT को डंप करें और वहां _PSS तालिका देखें। पेंटियम एम 780 के लिए इसे कुछ इस तरह दिखना चाहिए:

डिफ़ॉल्ट _PSS मान

नाम (_PSS, पैकेज (0x06) (// कुल 6 राज्य (P-राज्य) परिभाषित हैं पैकेज (0x06) (0x000008DB, // 2267 MHz (cf. Fid × FSB घड़ी) 0x00006978, // 27000 mW 0x0000000A, // 10 µs (विनिर्देश को पूरा करता है) 0x0000000A, // 10 µs 0x0000112B, // 0x11 = 17 (गुणक, Fid), 0x2b = 43 (Vid) 0x0000112B), पैकेज (0x06) (0x0000074B, // 1867 MHz (82) अधिकतम का%) 0x000059D8, // 23000 mW 0x0000000A, 0x0000000A, 0x00000E25, // Fid = 14, Vid = 37 0x00000E25), पैकेज (0x06) (0x0000640, // 1600 मेगाहर्ट्ज (अधिकतम का 71%) 0x00005208, // 21000 mW 0x0000000A, 0x0000000A, 0x00000C20, // Fid = 12, Vid = 32 0x00000C20), पैकेज (0x06) (0x00000535, // 1333 मेगाहर्ट्ज (अधिकतम का 59%) 0x00004650, // 18000 mW 0x0000000A, 0x0000000A, 0x00000A1C, // Fid = 10, Vid = 28 0x00000A1C), पैकेज (0x06) (0x0000042B, // 1067 MHz (अधिकतम का 47%) 0x00003E80, // 16000 mW 0x0000000A, 0x0000000A, 0x00000817, // Fid = 8, Vid = 23 0x00000817) पैकेज (0x06) (0x0 .) 0000320, // 800 मेगाहर्ट्ज (अधिकतम का 35%) 0x000032C8, // 13000 mW 0x0000000A, 0x0000000A, 0x00000612, // Fid = 6, Vid = 18 0x00000612)))


इसलिए, हम प्रत्येक P-स्तर के लिए डिफ़ॉल्ट Vid जानते हैं: 43, 37, 32, 28, 23, 18, जो 1388 mV से 988 mV तक के वोल्टेज से मेल खाती है। अंडरवोल्टिंग का सार यह है कि ये वोल्टेज प्रोसेसर के स्थिर संचालन के लिए वास्तव में आवश्यक से थोड़ा अधिक हैं। आइए "क्या अनुमति है की सीमा" निर्धारित करने का प्रयास करें।

मैंने इसके लिए एक सरल शेल स्क्रिप्ट लिखी है जो धीरे-धीरे विद को कम करती है और एक साधारण लूप (पॉवरड (8) डेमॉन, निश्चित रूप से, इससे पहले कील करने की आवश्यकता होती है) करती है। इस प्रकार, मैंने उन वोल्टेजों को निर्धारित किया जो प्रोसेसर को कम से कम लटकने की इजाजत नहीं देते थे, फिर सुपर पीआई परीक्षण चलाया और कई बार कोर का पुनर्निर्माण किया; बाद में, मैंने दो अधिकतम आवृत्तियों के लिए Vid मान को एक और बिंदु तक बढ़ा दिया, अन्यथा gcc कभी-कभी एक अवैध निर्देश त्रुटि के कारण क्रैश हो जाता है। कई दिनों तक किए गए सभी प्रयोगों के परिणामस्वरूप, हमें "स्थिर" विद का निम्नलिखित सेट मिला: 30, 18, 12, 7, 2, 0।

परिणामों का विश्लेषण

अब जब हमने अनुभवजन्य रूप से न्यूनतम सुरक्षित वोल्टेज निर्धारित कर लिया है, तो उनकी तुलना मूल वोल्टेज से करना दिलचस्प है:
अधिकतम वोल्टेज को 15% तक कम करने से भी काफी ठोस परिणाम सामने आए: लंबे समय तक लोड न केवल प्रोसेसर के ओवरहीटिंग और आपातकालीन शटडाउन की ओर जाता है, सामान्य तौर पर तापमान अब लगभग 80 डिग्री सेल्सियस से अधिक नहीं होता है। "ऑफिस" मोड में अनुमानित बैटरी जीवन, acpiconf -i 0 को देखते हुए, 1 घंटे 40 मीटर से बढ़कर 2 घंटे 25 मीटर हो गया है (इतना नहीं, लेकिन लिथियम-आयन कोशिकाएं समय के साथ थक जाती हैं, और मैं मैंने सात साल पहले लैपटॉप खरीदने के बाद से बैटरी नहीं बदली है।)

अब हमें यह सुनिश्चित करने की आवश्यकता है कि सेटिंग्स स्वचालित रूप से लागू हो जाएं। उदाहरण के लिए, आप cpufreq (4) ड्राइवर को संशोधित कर सकते हैं ताकि PSV मान अपनी तालिका से लिया जाए, न कि ACPI के माध्यम से। लेकिन यह असुविधाजनक है, यदि केवल इसलिए कि आपको सिस्टम को अपडेट करते समय ड्राइवर को पैच करना याद रखना होगा, और सामान्य तौर पर - यह एक समाधान की तुलना में एक गंदे हैक की तरह दिखता है। आप शायद अभी भी किसी तरह पैच पॉवरड (8) कर सकते हैं, जो लगभग उन्हीं कारणों से खराब है। आप बस स्क्रिप्ट चला सकते हैं, एमएसआर को सीधे लिखकर वोल्टेज को कम कर सकते हैं (जो वास्तव में, मैंने "स्थिर" वोल्टेज निर्धारित करने के लिए किया था), लेकिन फिर आपको राज्यों के बीच संक्रमण को याद रखना और स्वतंत्र रूप से संभालना होगा (न केवल पी -स्टेट्स, सामान्य तौर पर, कोई भी, उदाहरण के लिए, जब लैपटॉप नींद से जागता है)। यह बात भी नहीं है।

यदि हमें ACPI के माध्यम से PSV मान मिलते हैं, तो सबसे तार्किक परिवर्तन DSDT में _PSS तालिका है। सौभाग्य से, आपको इसके लिए BIOS के साथ छेड़छाड़ करने की आवश्यकता नहीं है: FreeBSD एक फ़ाइल से DSDT लोड करने में सक्षम है (Habré पर ACPI तालिकाओं को पहले से ही संशोधित करने के बारे में, इसलिए हम अब इस पर विस्तार से ध्यान नहीं देंगे)। DSDT में आवश्यक फ़ील्ड बदलें:

_PSS . के लिए अंडरवोल्टिंग पैच

@@ -7385.8 +7385.8 @@ 0x00006978, 0x0000000A, 0x0000000A, - 0x0000112B, - 0x0000112B + 0x0000111D, + 0x0000111D), पैकेज (0x06) @@ -7395.8 +7395.8 @@ 0x000059D8, 0x0000000A, 0x0000000E, - 0x00000E25, - 0x00000E25 0x00000E12, + 0x00000E12), पैकेज (0x06) @@ -7405.8 +7405.8 @@ 0x00005208, 0x0000000A, 0x0000000A, - 0x00000C20, - 0x00000C00C + 0x00000) 0x06) @@ -7415.8 +7415.8 @@ 0x00004650, 0x0000000A, - 0x00000A, 0x0000000 , - 0x00000A1C + 0x00000A07, + 0x00000A07), पैकेज (0x06) @@ -7425.8 +7425.8 @@ 0x00003E80 0x0000000A, 0x0000000A, - 0x00000817, - 0x00000817 + 0x00000802, + 0x00000802), पैकेज (0x06) @@ -7435.8 @ 0x000032C8, 0x0000000A, 0x0000000A, - 0x00000612, + 0x00000612))


एक नई एएमएल फ़ाइल (एसीपीआई बाइटकोड) संकलित करें और /boot/loader.conf को संशोधित करें ताकि फ्रीबीएसडी डिफ़ॉल्ट के बजाय हमारे संशोधित डीएसडीटी को लोड करे:

Acpi_dsdt_load = "हाँ" acpi_dsdt_name = "/ रूट / undervolt.aml"
वह, सामान्य तौर पर, सब कुछ है। यदि आप प्रोसेसर बदलते हैं तो इन दो पंक्तियों को /boot/loader.conf में टिप्पणी करना सुनिश्चित करें।

यहां तक ​​​​कि अगर आप नाममात्र वोल्टेज को कम नहीं करने जा रहे हैं, तो प्रोसेसर राज्यों (न केवल पी-स्टेट्स) के प्रबंधन को ट्यून करने की क्षमता काम आ सकती है। दरअसल, अक्सर ऐसा होता है कि BIOS "वक्र" तालिकाओं को गलत तरीके से, अपूर्ण रूप से भरता है, या उन्हें बिल्कुल भी नहीं भरता है (उदाहरण के लिए, क्योंकि सेलेरॉन ईएसटी का समर्थन नहीं करता है, और निर्माता आधिकारिक तौर पर इसके प्रतिस्थापन के लिए प्रदान नहीं करता है)। ऐसे में आपको सारे काम खुद करने होंगे। ध्यान दें कि अकेले _PSS तालिका जोड़ना पर्याप्त नहीं हो सकता है; उदाहरण के लिए, सी-स्टेट्स _CST तालिका द्वारा निर्दिष्ट किए जाते हैं, और इसके अतिरिक्त, आपको स्वयं नियंत्रण प्रक्रियाओं (प्रदर्शन नियंत्रण, _PCT) का वर्णन करने की आवश्यकता हो सकती है। सौभाग्य से, यह सरल और काफी विस्तृत है, उदाहरणों के साथ, एसीपीआई विनिर्देश के आठवें अध्याय में वर्णित है।

जीएनयू / लिनक्स में अंडरवोल्टिंग

सच कहा जाए, तो पहले मुझे लगा कि मेरे लिए जेंटू अंडरवोल्टिंग गाइड को पढ़ना और इसे फ्रीबीएसडी के लिए अनुकूलित करना पर्याप्त होगा। यह इतना आसान नहीं निकला, क्योंकि दस्तावेज़ बेहद बेवकूफ़ निकला (जो वास्तव में Gentoo Wiki के लिए अजीब है)। दुर्भाग्य से, मुझे उनकी नई साइट पर ऐसा कुछ नहीं मिला, मुझे एक पुरानी प्रति से संतोष करना पड़ा; और हालांकि मैं समझता हूं कि इस गाइड ने अपनी प्रासंगिकता खो दी है, फिर भी मैं इसकी थोड़ी आलोचना करूंगा। :-)

किसी कारण से, किसी कारण से, तुरंत, युद्ध की घोषणा किए बिना, उन्हें कर्नेल पैच करने की पेशकश की जाती है (फ्रीबीएसडी में, एक मिनट के लिए, हमारे पास कोई सिस्टम नहीं है कोडसंशोधित करने की आवश्यकता नहीं थी)। ड्राइवर इंटर्नल में हथौड़ा मारने या कुछ इनिट-स्क्रिप्ट में कुछ "सुरक्षित" वोल्टेज के मूल्यों को लिखने के लिए, यह स्पष्ट नहीं है कि वे किसके द्वारा और कैसे प्राप्त किए गए थे, एक विशेष तालिका से (जिसमें पेंटियम एम 780 का मजाक उड़ाया जाता है) एक पंक्ति जिसमें केवल प्रश्न चिह्न होते हैं)। सलाह का पालन करें, जिनमें से कुछ ऐसे लोगों द्वारा लिखे गए हैं जो स्पष्ट रूप से नहीं समझते कि वे किस बारे में बात कर रहे हैं। और सबसे महत्वपूर्ण बात, यह पूरी तरह से स्पष्ट नहीं है कि कुछ संख्याओं के ये जादुई प्रतिस्थापन दूसरों के लिए क्यों और कैसे काम करते हैं; कर्नेल को पैच करने और पुनर्निर्माण करने से पहले ईएसटी को "स्पर्श" करने का कोई तरीका नहीं है, कभी भी एमएसआर रजिस्टरों का उल्लेख नहीं करना और कमांड लाइन से उनके साथ काम करना। एसीपीआई तालिकाओं के संशोधन को वैकल्पिक और पसंदीदा विकल्प के रूप में नहीं माना जाता है।

माकोस एसीपीआई के साथ काफी निकटता से बातचीत करता है (और सही ढंग से काम करने की उम्मीद करता है), और टेबल को संशोधित करना एक विशिष्ट हार्डवेयर के लिए इसे कॉन्फ़िगर करने के मुख्य तरीकों में से एक है। इसलिए, पहली बात जो दिमाग में आती है वह है अपने डीएसडीटी को उसी तरह डंप और पैच करना। वैकल्पिक तरीका: google: //IntelEnhancedSpeedStep.kext जैसे एक, दो, तीन।

एक और "अद्भुत" उपयोगिता (सौभाग्य से पहले से ही पुरानी) $ 10 के लिए वोल्टेज और आवृत्ति को बदलने की क्षमता खरीदने की पेशकश करती है। :-)

इंटरनेट पर RMClock नामक एक बहुत ही रोचक कार्यक्रम पर चर्चा करने के लिए। इससे पहले, मैंने पहले ही कई बार कार्यक्रम का सामना किया है, लेकिन सेटिंग्स जो पहली नज़र में स्पष्ट नहीं हैं और किसी भी दस्तावेज की अनुपस्थिति इस उपयोगिता से निपटने की किसी भी इच्छा को अस्वीकार और हतोत्साहित करती है। फिर भी, कार्यक्रम बहुत दिलचस्प है और ध्यान देने योग्य है। अब मैं आपको बताऊंगा कि यह औसत लैपटॉप मालिक को क्यों और कैसे आकर्षित कर सकता है।

निर्माताराइटमार्क

फ़ाइल का आकार डाउनलोड करें४६३ केबी

कार्यक्रम का उद्देश्य

एक छोटी सी उपयोगिता जो वास्तविक समय में प्रोसेसर कोर की घड़ी की गति, थ्रॉटलिंग, प्रोसेसर लोड, वोल्टेज और तापमान की निगरानी करती है। यह पावर प्रबंधन सुविधाओं का समर्थन करने वाले प्रोसेसर के प्रदर्शन और बिजली की खपत को प्रबंधित करने में भी सक्षम है। स्वचालित मोड में, यह लगातार सीपीयू उपयोग की निगरानी करता है और "मांग पर प्रदर्शन" की अवधारणा के अनुसार स्वचालित रूप से इसकी घड़ी की गति, प्रोसेसर कोर वोल्टेज और / या थ्रॉटलिंग स्तर को समायोजित करता है।

आम उपयोगकर्ता के लिए लाभ

केंद्रीय प्रोसेसर को आपूर्ति की गई वोल्टेज को कम करें, जिससे ऊर्जा की खपत कम करें, गर्मी उत्पादन कम करें और स्वायत्तता बढ़ाएं.

तकनीकी विवरण में जाने के बिना, विचार काफी सरल है - केंद्रीय प्रसंस्करण इकाई (सीपीयू) की बिजली खपत को कम करने के लिए। विधि सार्वभौमिक नहीं है और 100% नहीं है, क्योंकि प्रत्येक सीपीयू में अद्वितीय भौतिक गुण होते हैं और एक उच्च संभावना है कि एक ही घड़ी की गति पर इसे इस प्रकार के सभी प्रोसेसर के लिए डिफ़ॉल्ट से कम शक्ति की आवश्यकता होती है। कितनी बिजली की खपत को कम किया जा सकता है यह भाग्य और आपके सीपीयू पर निर्भर करता है। मैं भाग्यशाली था कि परिणाम बहुत खुलासा करने वाले थे।

इंस्टालेशन

बस निर्देशों का पालन करें और कुछ नहीं। बस ध्यान रखें कि प्रोग्राम स्वचालित रूप से स्टार्टअप में लोड हो जाता है और ऊर्जा खपत प्रोफाइल के प्रबंधन के लिए मानक सॉफ्टवेयर बन जाता है। इसलिए यदि आपने अन्य सॉफ़्टवेयर (एसर, एएसयूएस में मालिकाना उपयोगिताओं) को स्थापित किया है, तो संघर्षों से बचने के लिए उन्हें पूरी तरह से अक्षम करने की आवश्यकता है।

अनुकूलन

समायोजन

इस टैब में आपको ब्लॉक में दो आइटम चेक करने होंगे चालू होनाविकल्प... विंडोज़ शुरू होने पर एप्लिकेशन को स्वचालित रूप से प्रारंभ करने के लिए।

प्रबंध

हम डिफ़ॉल्ट रूप से सब कुछ छोड़ देते हैं और जांचते हैं कि आइटम सक्षमओएसशक्तिप्रबंधएकीकरणसक्रिय।

प्रोफाइल

मज़ा यहां शुरू होता है। राज्यों के लिए एसी पावर (मेन ऑपरेशन) और बैटरी (बैटरी ऑपरेशन), आवश्यक प्रोफाइल सेट करें। नेटवर्क पर काम करते समय, मैं सेटिंग करने की सलाह देता हूं पर मांग (आवश्यकतानुसार प्रदर्शन), और बैटरी पर चलने पर शक्ति बचत।

प्रोफाइल के ठीक नीचे, सभी संभावित प्रोसेसर स्टेट्स (मल्टीप्लायर, एफआईडी) प्रदर्शित होते हैं, साथ ही इस स्थिति में सीपीयू पर लागू वोल्टेज (वीआईडी) भी प्रदर्शित होते हैं। जिस घड़ी आवृत्ति पर प्रोसेसर संचालित होता है वह वर्तमान स्थिति पर निर्भर करता है; आवृत्ति को बदलने की क्षमता छोटे भार या निष्क्रिय समय के दौरान बिजली की खपत को कम करने के लिए बनाई गई है।

अब हमारा काम प्रत्येक गुणक के लिए कम वोल्टेज सेट करना है। मैंने लंबे समय तक प्रयोग नहीं किया और प्रत्येक गुणक के लिए न्यूनतम वोल्टेज निर्धारित किया। मैं तुरंत इस तरह के कार्यों की हानिकारकता के सवाल का जवाब देता हूं - आपके प्रोसेसर को कुछ नहीं होगा, सबसे खराब स्थिति में, सिस्टम फ्रीज हो जाएगा। मेरे मामले में, सब कुछ ठीक रहा, लेकिन अगर आपको कोई समस्या है, तो छोटे चरणों में वोल्टेज को न्यूनतम मूल्य तक कम करने का प्रयास करें जिस पर सिस्टम स्थिर रूप से काम करेगा।

अब आपको प्रोफाइल को कॉन्फ़िगर करने की आवश्यकता है मांग पर प्रदर्शन तथा बिजली की बचत। ऐसा करने के लिए, उपयुक्त वस्तुओं का चयन करें। दोनों ही मामलों में, बॉक्स को चेक करें उपयोग पी- राज्य संक्रमण ( PST), जिस प्रोफ़ाइल में आप वर्तमान में हैं। इसके अलावा, प्रोफ़ाइल के लिए पर मांग, सूची से और प्रोफ़ाइल के लिए सभी कारकों का चयन करें शक्ति सहेजा जा रहा है केवल पहला (इसका मतलब है कि बैटरी पावर पर चलने पर, प्रोसेसर हमेशा न्यूनतम आवृत्ति पर काम करेगा, निश्चित रूप से, आप एक और गुणक चुन सकते हैं, जिससे अधिकतम स्वीकार्य आवृत्ति बढ़ जाती है)। बाकी विकल्पों को निष्क्रिय छोड़ दें।

काम

बस इतना ही। अब आपको RMClock पावर मैनेजमेंट पावर प्रोफाइल को सक्रिय करना होगा। ऐसा करने के लिए, ट्रे में बैटरी पर बायाँ-क्लिक करें और इच्छित प्रोफ़ाइल का चयन करें। यदि यह वहां नहीं है, तो आपको पर क्लिक करना होगा अतिरिक्त विकल्पऊर्जा की खपत और वहाँ उठाओ। अब, पावर कनेक्ट करते समय, लैपटॉप प्रोफ़ाइल का उपयोग करेगा पर मांग , ए बैटरी पावर पर चलने पर - शक्ति बचत, हमारे द्वारा पहले की गई सेटिंग्स का उपयोग करना। उसी समय, हमने प्रोसेसर की बिजली की खपत को कम कर दिया और इसे प्रोग्राम सेटिंग्स के लिए स्पष्ट रूप से प्रतिक्रिया दी (मानक नियंत्रण कार्यक्रम का उपयोग करते समय, आवृत्ति निष्क्रिय होने पर भी ऊपर और नीचे कूद सकती है, और वोल्टेज भी बदल जाता है)।

चेकिंग

यदि आपने सब कुछ सही ढंग से किया है, तो टैब में निगरानीआप काम का परिणाम देख सकते हैं। FID-VID ग्राफ वर्तमान गुणक और वोल्टेज को दर्शाता है। मुख्य और बैटरी संचालन के लिए इन मानों की जाँच करें, उन्हें प्रोफ़ाइल में निर्धारित मानों से मेल खाना चाहिए।

अब किसी प्रोग्राम के साथ सभी सेटिंग्स का परीक्षण करने की सलाह दी जाती है, उदाहरण के लिए प्राइम 95। चुनौती यह सुनिश्चित करने की है कि सीपीयू हमारी चुनी हुई वोल्टेज सेटिंग पर सुचारू रूप से चले।

परिक्षण

सिद्धांत रूप में, सब कुछ हमेशा की तरह शांत है, लेकिन ये क्रियाएं वास्तविक कार्य को कैसे प्रभावित करती हैं?

टेस्ट सिस्टम: टेरा 1220 (इंटेल कोर 2 डुओ T7300)

मैंने संचालन के दोनों तरीकों का परीक्षण किया और उनकी तुलना मानक बिजली प्रबंधन कार्यक्रम के समान तरीकों से की।

संतुलितमांग पर वी.एस. प्रदर्शन

बैटरीईटर प्रोग्राम द्वारा अधिकतम लोड मोड (क्लासिक) में स्वायत्तता की जाँच की गई थी। वायरलेस इंटरफेस अक्षम हैं, स्क्रीन की चमक अधिकतम पर सेट है।

जैसा कि आप देख सकते हैं, ऑपरेटिंग समय बिल्कुल नहीं बदला है और 88 मिनट की राशि है। परिणामों की पुष्टि के लिए प्रत्येक परीक्षण का दो बार नेतृत्व किया गया। तो मेरे विशेष मामले में, वोल्टेज कम करने से बैटरी जीवन प्रभावित नहीं हुआ। लेकिन तापमान रीडिंग दिलचस्प है, परीक्षण के दौरान अधिकतम तापमान RMClock का उपयोग करते समय कम हो गया 23 डिग्री सेल्सियस! बस एक उत्कृष्ट परिणाम, जो अंतिम उपयोगकर्ता के लिए लैपटॉप मामले के तापमान में एक सामान्य कमी, साथ ही शोर में कमी (पंखा पूरी गति से चालू नहीं होता है) का मतलब है।

PCMark में प्रदर्शन भी नहीं बदला, माप में अंतर त्रुटि के मार्जिन के भीतर है। लेकिन तापमान के साथ, हम एक ही तस्वीर देखते हैं - अधिकतम तापमान में कमी आई है 17 डिग्री सेल्सियस

ऊर्जा की बचतबनामशक्तिसहेजा जा रहा है

यहां स्थिति ने खुद को दोहराया। बैटरी लाइफ कम नहीं हुई है, लेकिन तापमान में काफी गिरावट आई है। इसका काम के आराम पर सकारात्मक प्रभाव पड़ता है।

आधुनिक डेस्कटॉप और (विशेष रूप से) मोबाइल प्रोसेसर में, कई ऊर्जा-बचत तकनीकों का उपयोग किया जाता है: ओडीसीएम, सीएक्सई, ईआईएसटी, आदि। आज हम शायद उनमें से उच्चतम स्तर में रुचि लेंगे: आवृत्ति और वोल्टेज का लचीला नियंत्रण ऑपरेशन के दौरान प्रोसेसर कोर - कूल "एन" शांत, पावरनाउ! AMD से और Intel से एन्हांस्ड स्पीडस्टेप (EIST)।

अक्सर, एक कंप्यूटर या लैपटॉप उपयोगकर्ता को BIOS और / या ऑपरेटिंग सिस्टम में किसी विशेष तकनीक के लिए समर्थन को सक्षम (चेक बॉक्स) करने की आवश्यकता होती है - आमतौर पर कोई ठीक ट्यूनिंग प्रदान नहीं की जाती है, हालांकि, जैसा कि अभ्यास से पता चलता है, यह बहुत उपयोगी हो सकता है। इस लेख में मैं इस बारे में बात करूंगा कि आप ऑपरेटिंग सिस्टम (उदाहरण के लिए, इंटेल पेंटियम एम और फ्रीबीएसडी) से प्रोसेसर कोर के ऑपरेटिंग वोल्टेज को कैसे नियंत्रित कर सकते हैं, और आपको इसकी आवश्यकता क्यों हो सकती है।

बड़ी संख्या में मैनुअल के बावजूद, आप शायद ही ऑपरेटिंग सिस्टम (और अंतिम उपयोगकर्ता नहीं) के दृष्टिकोण से उन्नत स्पीडस्टेप तकनीक का विस्तृत विवरण पाते हैं, विशेष रूप से रूसी में, इसलिए लेख का एक महत्वपूर्ण हिस्सा कार्यान्वयन के लिए समर्पित है विवरण और प्रकृति में कुछ हद तक सैद्धांतिक है।

मुझे उम्मीद है कि यह लेख न केवल फ्रीबीएसडी उपयोगकर्ताओं के लिए उपयोगी होगा: हम जीएनयू / लिनक्स, विंडोज और मैक ओएस एक्स पर भी थोड़ा स्पर्श करेंगे। हालांकि, इस मामले में, विशिष्ट ऑपरेटिंग सिस्टम माध्यमिक महत्व का है।

प्रस्तावना

पिछले साल, मैंने अपने पुराने लैपटॉप में प्रोसेसर को अपग्रेड किया: मैंने मानक 735 के बजाय एक पेंटियम एम 780 स्थापित किया, इसे अधिकतम करने के लिए समाप्त किया, इसलिए बोलने के लिए। लैपटॉप लोड के तहत अधिक गर्म होना शुरू हुआ (गर्मी लंपटता के कारण 10 डब्ल्यू की वृद्धि हुई); मैंने इस पर ज्यादा ध्यान नहीं दिया (सिवाय इसके कि मैंने कूलर को साफ और चिकनाई दी हो), लेकिन एक अच्छा दिन, एक लंबे संकलन के दौरान, कंप्यूटर ... बस बंद हो गया (तापमान एक महत्वपूर्ण सौ डिग्री तक पहुंच गया) . मैं तापमान की निगरानी के लिए सिस्टम चर hw.acpi.thermal.tz0.temperature का मान ट्रे में लाया और, यदि कुछ भी हो, तो समय पर "भारी" कार्य को बाधित करें। लेकिन थोड़ी देर बाद, मैंने अपना गार्ड खो दिया (तापमान हमेशा सामान्य सीमा के भीतर रहा), और सब कुछ दोहराया। उस समय, मैंने फैसला किया कि मैं लंबे समय तक सीपीयू लोड के दौरान लगातार आपातकालीन शटडाउन से डरना नहीं चाहता और Ctrl-C पर अपना हाथ पकड़ना चाहता हूं, या प्रोसेसर को मजबूर करना चाहता हूं।

आमतौर पर, नाममात्र वोल्टेज को बदलने का अर्थ है ओवरक्लॉकिंग (यानी बढ़ी हुई आवृत्ति पर) के दौरान प्रोसेसर के स्थिर संचालन को सुनिश्चित करने के लिए इसे बढ़ाना। मोटे तौर पर, प्रत्येक वोल्टेज मान एक निश्चित आवृत्ति सीमा से मेल खाता है जिस पर वह काम कर सकता है, और ओवरक्लॉकर का कार्य अधिकतम आवृत्ति को खोजना है जिस पर प्रोसेसर अभी तक "छोटी गाड़ी" नहीं है। हमारे मामले में, कार्य कुछ हद तक सममित है: एक ज्ञात आवृत्ति के लिए (अधिक सटीक, जैसा कि हम जल्द ही पता लगाएंगे, आवृत्तियों का एक सेट), सबसे कम वोल्टेज खोजें जो सीपीयू के स्थिर संचालन को सुनिश्चित करता है। मैं ऑपरेटिंग आवृत्ति को कम नहीं करना चाहता, ताकि प्रदर्शन में कमी न हो - लैपटॉप पहले से ही टॉप-एंड से दूर है। इसके अलावा, वोल्टेज कम करें ज्यादा लाभदायक.

थोड़ा सा सिद्धांत

जैसा कि आप जानते हैं, एक प्रोसेसर का उष्मा अपव्यय उसकी क्षमता, आवृत्ति और . के समानुपाती होता है वर्गवोल्टेज (जो सोच रहा है कि ऐसा क्यों है, वे प्रोसेसर को प्राथमिक सीएमओएस इनवर्टर (तार्किक नकारात्मक) के एक सेट के रूप में मानते हुए, या लिंक का पालन करें: एक, दो, तीन) पर निर्भरता प्राप्त करने का प्रयास कर सकते हैं।

आधुनिक मोबाइल प्रोसेसर 50-70 वाट तक की खपत कर सकते हैं, जो अंततः गर्मी में नष्ट हो जाते हैं। यह बहुत कुछ है (तापदीप्त लैंप याद रखें), विशेष रूप से एक लैपटॉप के लिए, जो लोड के तहत स्टैंड-अलोन मोड में उस सुअर संतरे की तरह बैटरी को "खाएगा"। सीमित स्थान की स्थितियों में, सबसे अधिक संभावना है कि गर्मी को सक्रिय रूप से हटाना होगा, जिसका अर्थ है कि कूलर के पंखे (संभवतः कई) को घुमाने के लिए अतिरिक्त ऊर्जा खपत।

स्वाभाविक रूप से, यह स्थिति किसी के अनुरूप नहीं थी, और प्रोसेसर निर्माताओं ने यह सोचना शुरू कर दिया कि बिजली की खपत (और, तदनुसार, गर्मी हस्तांतरण) को कैसे अनुकूलित किया जाए, और साथ ही प्रोसेसर को ओवरहीटिंग से बचाया जाए। रुचि रखने वालों के लिए, मैं दिमित्री बेसेडिन के कई अद्भुत लेखों को पढ़ने की सलाह देता हूं, और इस बीच मैं व्यवसाय में उतर जाऊंगा।

इतिहास का हिस्सा

पहली बार, स्पीडस्टेप तकनीक (संस्करण 1.1) तीसरी पेंटियम की दूसरी पीढ़ी में दिखाई दी (लैपटॉप के लिए 18-माइक्रोन प्रक्रिया प्रौद्योगिकी मोबाइल कॉपरमाइन के अनुसार निर्मित, 2000), जो लोड या कंप्यूटर के पावर स्रोत - नेटवर्क पर निर्भर करता है या बैटरी - एक चर कारक के कारण उच्च और निम्न आवृत्तियों के बीच स्विच कर सकता है। इकोनॉमी मोड में, प्रोसेसर ने लगभग आधी बिजली की खपत की।

13-माइक्रोन तकनीकी प्रक्रिया में संक्रमण के साथ, प्रौद्योगिकी संस्करण संख्या 2.1 प्राप्त करती है और "उन्नत" हो जाती है - अब प्रोसेसर न केवल आवृत्ति, बल्कि वोल्टेज भी कम कर सकता है। संस्करण 2.2 नेटबर्स्ट आर्किटेक्चर के लिए एक अनुकूलन है, और तीसरे संस्करण (सेंट्रिनो प्लेटफॉर्म) द्वारा प्रौद्योगिकी को आधिकारिक तौर पर एन्हांस्ड इंटेल स्पीडस्टेप (ईआईएसटी) कहा जाएगा।

संस्करण 3.1 (2003) पहली बार पेंटियम एम प्रोसेसर (बनियास और दोथन कोर) की पहली और दूसरी पीढ़ी में उपयोग किया जाता है। 100 मेगाहर्ट्ज (बनियास के लिए) या 133 मेगाहर्ट्ज (दोथन के लिए, हमारे मामले) के चरण के साथ आवृत्ति भिन्न (पहले, यह सिर्फ दो मानों के बीच बदल गई) आधार एक के 40% से 100% तक। साथ ही, इंटेल बिजली की खपत को और अधिक अनुकूलित करने के लिए गतिशील एल2 कैश क्षमता प्रबंधन पेश कर रहा है। संस्करण 3.2 (उन्नत EIST) - साझा L2 कैश के साथ बहु-कोर प्रोसेसर के लिए अनुकूलन। (स्पीडस्टेप तकनीक पर इंटेल से एक छोटा सा अक्सर पूछे जाने वाले प्रश्न।)

अब, अंधाधुंध तरीके से और ट्यूटोरियल का अनुसरण करने के बजाय, पीडीएफ "कू" डाउनलोड करें और यह समझने की कोशिश करें कि ईएसटी कैसे काम करता है (मैं इस संक्षिप्त नाम का उपयोग करना जारी रखूंगा, क्योंकि यह अधिक सार्वभौमिक और छोटा है)।

ईएसटी कैसे काम करता है

तो, ईएसटी आपको प्रोसेसर के प्रदर्शन और बिजली की खपत का प्रबंधन करने की अनुमति देता है, और गतिशील, अपने काम के दौरान। पहले के कार्यान्वयन के विपरीत, जिसे प्रोसेसर के ऑपरेटिंग मापदंडों को बदलने के लिए हार्डवेयर समर्थन (चिपसेट में) की आवश्यकता होती है, ईएसटी अनुमति देता है प्रोग्राम के रूप में, अर्थात। BIOS या ऑपरेटिंग सिस्टम का उपयोग करते हुए, लोड, कंप्यूटर बिजली की आपूर्ति के प्रकार, CPU तापमान और / या OS सेटिंग्स (नीति) के आधार पर गुणक (प्रोसेसर आवृत्ति और बस आवृत्ति का अनुपात) और कोर वोल्टेज (V cc) को बदलें। .

ऑपरेशन के दौरान, प्रोसेसर कई राज्यों (पावर स्टेट्स) में से एक में होता है: टी (थ्रॉटल), एस (नींद), सी (निष्क्रिय), पी (प्रदर्शन), कुछ नियमों के अनुसार उनके बीच स्विच करना (एसीपीआई का पी। ३८६) 5.0 विनिर्देश)।

सिस्टम में मौजूद प्रत्येक प्रोसेसर को डीएसडीटी तालिका में वर्णित किया जाना चाहिए, अक्सर \ _PR नामस्थान में, और आमतौर पर कई तरीके प्रदान करता है जिसके माध्यम से ऑपरेटिंग सिस्टम (पीएम ड्राइवर) के साथ बातचीत होती है, और जो प्रोसेसर की क्षमताओं का वर्णन करती है (_PDC, _PPC), समर्थित राज्य (_CST, _TSS, _PSS) और उनका प्रबंधन (_PTC, _PCT)। प्रत्येक सीपीयू के लिए आवश्यक मान (यदि यह तथाकथित सीपीयू सपोर्ट पैकेज में शामिल है) मदरबोर्ड के BIOS "द्वारा निर्धारित किया जाता है, जो संबंधित तालिकाओं और एसीपीआई विधियों (पी। 11 पीडीएफ") में भरता है जब मशीन बूट है।

ईएसटी पी-स्टेट (पी-स्टेट) में प्रोसेसर के काम को नियंत्रित करता है, वे हमारे लिए रुचिकर होंगे। उदाहरण के लिए, पेंटियम एम छह पी-राज्यों का समर्थन करता है (चित्र 1.1 और तालिका 1.6 पीडीएफ "की देखें), वोल्टेज और आवृत्ति में भिन्न:

सामान्य तौर पर, जब प्रोसेसर पहले से ज्ञात नहीं होता है, तो इसके साथ काम करने का एकमात्र कम या ज्यादा विश्वसनीय (और इंटेल द्वारा अनुशंसित) तरीका एसीपीआई है। आप सीधे कमांड लाइन से सहित, एमएसआर (मॉडल-विशिष्ट रजिस्टर) रजिस्टरों के माध्यम से एसीपीआई को दरकिनार करते हुए एक विशिष्ट प्रोसेसर के साथ सीधे बातचीत कर सकते हैं: संस्करण 7.2 से शुरू होकर, फ्रीबीएसडी इसके लिए सीपीयूकंट्रोल (8) उपयोगिता का उपयोग करता है।

आप IA_32_MISC_ENABLE रजिस्टर (0x1A0) में 16वें बिट को देखकर पता लगा सकते हैं कि आपका प्रोसेसर EST का समर्थन करता है या नहीं, इसे सेट किया जाना चाहिए:

# kldload cpuctl # cpucontrol -m 0x1a0 / dev / cpuctl0 | (पढ़ें _ msr हाय लो; इको $ ((लो >> 16 और 1))) 1
GNU / Linux के लिए समान कमांड (msr-tools package आवश्यक):

# modprobe msr # इको ​​$ ((`rdmsr -c 0x1a0` >> 16 और 1)) 1
IA32_PERF_CTL रजिस्टर (0x199) में लिखते समय राज्यों के बीच संक्रमण होता है। आप IA32_PERF_STATUS रजिस्टर (0x198) को पढ़कर वर्तमान ऑपरेटिंग मोड का पता लगा सकते हैं, जिसे गतिशील रूप से अपडेट किया जाता है (टैब। 1.4 pdf "ki)। भविष्य में, मैं संक्षिप्तता के लिए IA32_ उपसर्ग को छोड़ दूंगा।

# cpucontrol -m 0x198 / dev / cpuctl0 MSR 0x198: 0x0612112b 0x06000c20
प्रलेखन से यह निम्नानुसार है कि वर्तमान स्थिति निचले 16 बिट्स में एन्कोडेड है (यदि आप कई बार कमांड निष्पादित करते हैं, तो उनका मान बदल सकता है - इसका मतलब है कि ईएसटी काम करता है)। यदि आप अन्य बिट्स पर करीब से नज़र डालें, तो वे स्पष्ट रूप से कचरा नहीं हैं। गुगल करके, आप पता लगा सकते हैं कि उनका क्या मतलब है।

PERF_STATUS रजिस्टर संरचना

PERF_STATUS से पढ़ा गया डेटा निम्नलिखित संरचना द्वारा दर्शाया गया है (यह मानते हुए कि डेटा को छोटे-एंडियन के रूप में संग्रहीत किया जाता है):

संरचना msr_perf_status (अहस्ताक्षरित curr_psv: 16; / * वर्तमान PSV * / अहस्ताक्षरित स्थिति: 8; / * स्थिति झंडे * / अहस्ताक्षरित min_multi: 8; / * न्यूनतम गुणक * / अहस्ताक्षरित max_psv: 16; / * अधिकतम PSV * / अहस्ताक्षरित init_psv: 16; / * पावर-ऑन पीएसवी * /);
तीन 16-बिट फ़ील्ड तथाकथित प्रदर्शन राज्य मान (PSV) हैं, हम नीचे उनकी संरचना पर विचार करेंगे: वर्तमान PSV मान, अधिकतम (प्रोसेसर पर निर्भर करता है) और सिस्टम की शुरुआत में मान (जब कामोत्तेजित)। ऑपरेटिंग मोड बदलने पर वर्तमान मान (curr_psv) स्पष्ट रूप से बदल जाता है, अधिकतम (max_psv) आमतौर पर स्थिर रहता है, प्रारंभिक मान (init_psv) नहीं बदलता है: एक नियम के रूप में, यह डेस्कटॉप और सर्वर के लिए अधिकतम मान के बराबर है, लेकिन मोबाइल सीपीयू के लिए न्यूनतम। इंटेल प्रोसेसर के लिए न्यूनतम गुणक (min_mult) लगभग हमेशा छह होता है। स्थिति फ़ील्ड में कुछ फ़्लैग का मान होता है, उदाहरण के लिए, जब EST या THERM इवेंट होते हैं (अर्थात, जब P-स्टेट बदलता है या प्रोसेसर क्रमशः ज़्यादा गरम होता है)।

अब जब हम PERF_STATUS रजिस्टर के सभी 64 बिट्स का उद्देश्य जानते हैं, तो हम ऊपर पढ़े गए शब्द को समझ सकते हैं: 0x0612 112b 0x06 00 0c20 PSV प्रारंभ 0x0612, अधिकतम मान 0x112b, न्यूनतम गुणक 6 (उम्मीद के अनुसार), फ़्लैग साफ़ किए गए, वर्तमान PSV मान = 0x0c20। इन 16 बिट्स का वास्तव में क्या मतलब है?

प्रदर्शन राज्य मूल्य (पीएसवी) संरचना

पीएसवी क्या है, यह जानना और समझना बहुत जरूरी है, क्योंकि यह इस रूप में है कि प्रोसेसर ऑपरेटिंग मोड सेट किए जाते हैं।

संरचना psv (अहस्ताक्षरित vid: 6; / * वोल्टेज पहचानकर्ता * / अहस्ताक्षरित _reserved1: 2; अहस्ताक्षरित आवृत्ति: 5; / * आवृत्ति पहचानकर्ता * / अहस्ताक्षरित _reserved2: 1; अहस्ताक्षरित nibr: 1; / * गैर-पूर्णांक बस अनुपात * / अहस्ताक्षरित एसएलएफएम: 1; / * गतिशील एफएसबी आवृत्ति (सुपर-एलएफएम) * /);
डायनेमिक FSB फ़्रीक्वेंसी स्विचिंग हर दूसरी FSB घड़ी को छोड़ने के लिए निर्दिष्ट करती है, अर्थात। ऑपरेटिंग आवृत्ति को आधा करें; यह सुविधा पहली बार कोर 2 डुओ प्रोसेसर (मेरोम कोर) में लागू की गई थी और हमें चिंता नहीं है, साथ ही गैर-पूर्णांक बस अनुपात - कुछ प्रोसेसर द्वारा समर्थित एक विशेष मोड जो अनुमति देता है, जैसा कि नाम से पता चलता है, उनकी आवृत्ति को अधिक सूक्ष्मता से नियंत्रित करने के लिए .

दो क्षेत्रों का ईएसटी तकनीक से ही संबंध है - आवृत्ति पहचानकर्ता (फ़्रिक्वेंसी आइडेंटिफ़ायर, फ़िड), जो संख्यात्मक रूप से गुणक के बराबर है, और वोल्टेज (वोल्टेज आइडेंटिफ़ायर, विद), जो वोल्टेज स्तर से मेल खाती है (जो आमतौर पर है कम से कम प्रलेखित)।

वोल्टेज पहचानकर्ता

इंटेल जानकारी का खुलासा करने के लिए बहुत अनिच्छुक है (आमतौर पर एक एनडीए की आवश्यकता होती है) कि प्रत्येक प्रोसेसर के लिए वोल्टेज आईडी को वास्तव में कैसे एन्कोड किया जाता है। लेकिन अधिकांश लोकप्रिय सीपीयू के लिए, सौभाग्य से, यह सूत्र ज्ञात है; विशेष रूप से, हमारे पेंटियम एम (और कई अन्य) के लिए: V cc = Vid 0 + (Vid × V चरण), जहां V cc वर्तमान (वास्तविक) वोल्टेज है, Vid 0 बेस वोल्टेज है (जब Vid == 0) , वी चरण - चरण। कुछ लोकप्रिय प्रोसेसर के लिए तालिका (मिलीवोल्ट में सभी मान):
सी पी यू वीडियो 0 वी चरण वी बूट वी मिनट वी मैक्स
पेंटियम एम 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 द्वारा कब्जा कर लिए जाते हैं। चूंकि हमारे मामले में, बाकी बिट्स की उपेक्षा की जा सकती है, फिर पीएसवी, प्रोसेसर आवृत्ति, सिस्टम बस और भौतिक वोल्टेज एक साधारण सूत्र (पेंटियम एम के लिए) से संबंधित हैं:
अब आइए नियंत्रण रजिस्टर (PERF_CTL) को देखें। इसे लिखना निम्नानुसार किया जाना चाहिए: सबसे पहले, वर्तमान मूल्य पढ़ा जाता है (पूरे 64-बिट शब्द), इसमें आवश्यक बिट्स को बदल दिया जाता है, और रजिस्टर में वापस लिखा जाता है (तथाकथित रीड-मॉडिफाई-राइट) .

PERF_CTL रजिस्टर संरचना

संरचना msr_perf_ctl (अहस्ताक्षरित पीएसवी: 16; / * अनुरोधित पीएसवी * / अहस्ताक्षरित _reserved1: 16; अहस्ताक्षरित ida_diseng: 1; / * आईडीए छूट * / अहस्ताक्षरित _reserved2: 31;);
आईडीए (इंटेल डायनेमिक एक्सेलेरेशन) डिसेंज बिट आपको इंटेल कोर 2 डुओ टी7700 और बाद के प्रोसेसर पर अस्थायी रूप से अवसरवादी आवृत्ति नियंत्रण को अक्षम करने की अनुमति देता है - फिर से, हमें कोई दिलचस्पी नहीं है। कम 16 बिट्स (PSV) - वह मोड जिसमें हम प्रोसेसर को स्विच करने के लिए "पूछते" हैं।

_पीएसएस तालिका

_PSS तालिका राज्यों की एक सरणी है ( पैकेजएसीपीआई शब्दावली में) या ऐसी विधि जो ऐसी सरणी लौटाती है; प्रत्येक पी-राज्य बदले में निम्नलिखित संरचना (एसीपीआई विनिर्देश के पृष्ठ ४०९) द्वारा परिभाषित किया गया है:

स्ट्रक्चर पस्टेट (अहस्ताक्षरित कोर फ़्रीक्वेंसी; / * कोर सीपीयू ऑपरेटिंग फ़्रीक्वेंसी, मेगाहर्ट्ज * / अहस्ताक्षरित पावर; / * अधिकतम बिजली अपव्यय, mW * / अहस्ताक्षरित विलंबता; / * संक्रमण के दौरान सीपीयू की अनुपलब्धता की सबसे खराब स्थिति, μs * / अहस्ताक्षरित BusMasterLatency; / * सबसे खराब स्थिति विलंबता जबकि बस मास्टर्स मेमोरी तक पहुंचने में असमर्थ हैं, μs * / अहस्ताक्षरित नियंत्रण; / * इस स्थिति में स्विच करने के लिए PERF_CTL को लिखा जाने वाला मान * / अहस्ताक्षरित स्थिति; / * मान (एक पढ़ने के बराबर होना चाहिए) PERF_STATUS से) * /);
इस प्रकार, प्रत्येक पी-राज्य को कोर की कुछ ऑपरेटिंग आवृत्ति, अधिकतम विलुप्त शक्ति, पारगमन देरी (वास्तव में, यह उन राज्यों के बीच संक्रमण का समय है जिसके दौरान सीपीयू और मेमोरी अनुपलब्ध हैं), अंत में, सबसे दिलचस्प: पीएसवी , जो इस राज्य से मेल खाती है और जिसे इस राज्य (नियंत्रण) में जाने के लिए PERF_CTL को लिखा जाना चाहिए। यह सत्यापित करने के लिए कि प्रोसेसर ने सफलतापूर्वक नए राज्य में प्रवेश किया है, PERF_STATUS रजिस्टर पढ़ें और स्थिति फ़ील्ड में लिखे गए मान से इसकी तुलना करें।

ऑपरेटिंग सिस्टम का ईएसटी ड्राइवर कुछ प्रोसेसर के बारे में "जान" सकता है, अर्थात। एसीपीआई समर्थन के बिना उन्हें प्रबंधित करने में सक्षम होंगे। लेकिन यह एक दुर्लभ वस्तु है, विशेष रूप से आजकल (हालांकि अंडरवोल्टिंग के लिए "और लिनक्स पर, संस्करण 2.6.20 से पहले, आपको ड्राइवर में तालिकाओं को पैच करना पड़ता था, और 2011 में यह विधि काफी सामान्य थी)।

यह ध्यान दिया जाना चाहिए कि ईएसटी ड्राइवर _PSS तालिका और अज्ञात प्रोसेसर की अनुपस्थिति में भी काम कर सकता है। PERF_STATUS से अधिकतम और न्यूनतम मान पाए जा सकते हैं (इस मामले में, जाहिर है, पी-राज्यों की संख्या दो में पतित हो जाती है)।

पर्याप्त सिद्धांत। इन सबका क्या करें?

अब जब हम जानते हैं कि 1) वांछित एमएसआर शब्दों में सभी बिट्स का उद्देश्य, 2) हमारे प्रोसेसर के लिए पीएसवी वास्तव में कैसे एन्कोड किया गया है, और 3) जहां डीएसडीटी में आवश्यक सेटिंग्स देखने के लिए, आवृत्तियों की एक तालिका बनाने का समय है और वोल्टेज चूक जाना... आइए DSDT को डंप करें और वहां _PSS तालिका देखें। पेंटियम एम 780 के लिए इसे कुछ इस तरह दिखना चाहिए:

डिफ़ॉल्ट _PSS मान

नाम (_PSS, पैकेज (0x06) (// कुल 6 राज्य (P-राज्य) परिभाषित हैं पैकेज (0x06) (0x000008DB, // 2267 MHz (cf. Fid × FSB घड़ी) 0x00006978, // 27000 mW 0x0000000A, // 10 µs (विनिर्देश को पूरा करता है) 0x0000000A, // 10 µs 0x0000112B, // 0x11 = 17 (गुणक, Fid), 0x2b = 43 (Vid) 0x0000112B), पैकेज (0x06) (0x0000074B, // 1867 MHz (82) अधिकतम का%) 0x000059D8, // 23000 mW 0x0000000A, 0x0000000A, 0x00000E25, // Fid = 14, Vid = 37 0x00000E25), पैकेज (0x06) (0x0000640, // 1600 मेगाहर्ट्ज (अधिकतम का 71%) 0x00005208, // 21000 mW 0x0000000A, 0x0000000A, 0x00000C20, // Fid = 12, Vid = 32 0x00000C20), पैकेज (0x06) (0x00000535, // 1333 मेगाहर्ट्ज (अधिकतम का 59%) 0x00004650, // 18000 mW 0x0000000A, 0x0000000A, 0x00000A1C, // Fid = 10, Vid = 28 0x00000A1C), पैकेज (0x06) (0x0000042B, // 1067 MHz (अधिकतम का 47%) 0x00003E80, // 16000 mW 0x0000000A, 0x0000000A, 0x00000817, // Fid = 8, Vid = 23 0x00000817) पैकेज (0x06) (0x0 .) 0000320, // 800 मेगाहर्ट्ज (अधिकतम का 35%) 0x000032C8, // 13000 mW 0x0000000A, 0x0000000A, 0x00000612, // Fid = 6, Vid = 18 0x00000612)))


इसलिए, हम प्रत्येक P-स्तर के लिए डिफ़ॉल्ट Vid जानते हैं: 43, 37, 32, 28, 23, 18, जो 1388 mV से 988 mV तक के वोल्टेज से मेल खाती है। अंडरवोल्टिंग का सार यह है कि ये वोल्टेज प्रोसेसर के स्थिर संचालन के लिए वास्तव में आवश्यक से थोड़ा अधिक हैं। आइए "क्या अनुमति है की सीमा" निर्धारित करने का प्रयास करें।

मैंने इसके लिए एक सरल शेल स्क्रिप्ट लिखी है जो धीरे-धीरे विद को कम करती है और एक साधारण लूप (पॉवरड (8) डेमॉन, निश्चित रूप से, इससे पहले कील करने की आवश्यकता होती है) करती है। इस प्रकार, मैंने उन वोल्टेजों को निर्धारित किया जो प्रोसेसर को कम से कम लटकने की इजाजत नहीं देते थे, फिर सुपर पीआई परीक्षण चलाया और कई बार कोर का पुनर्निर्माण किया; बाद में, मैंने दो अधिकतम आवृत्तियों के लिए Vid मान को एक और बिंदु तक बढ़ा दिया, अन्यथा gcc कभी-कभी एक अवैध निर्देश त्रुटि के कारण क्रैश हो जाता है। कई दिनों तक किए गए सभी प्रयोगों के परिणामस्वरूप, हमें "स्थिर" विद का निम्नलिखित सेट मिला: 30, 18, 12, 7, 2, 0।

परिणामों का विश्लेषण

अब जब हमने अनुभवजन्य रूप से न्यूनतम सुरक्षित वोल्टेज निर्धारित कर लिया है, तो उनकी तुलना मूल वोल्टेज से करना दिलचस्प है:
अधिकतम वोल्टेज को 15% तक कम करने से भी काफी ठोस परिणाम सामने आए: लंबे समय तक लोड न केवल प्रोसेसर के ओवरहीटिंग और आपातकालीन शटडाउन की ओर जाता है, सामान्य तौर पर तापमान अब लगभग 80 डिग्री सेल्सियस से अधिक नहीं होता है। "ऑफिस" मोड में अनुमानित बैटरी जीवन, acpiconf -i 0 को देखते हुए, 1 घंटे 40 मीटर से बढ़कर 2 घंटे 25 मीटर हो गया है (इतना नहीं, लेकिन लिथियम-आयन कोशिकाएं समय के साथ थक जाती हैं, और मैं मैंने सात साल पहले लैपटॉप खरीदने के बाद से बैटरी नहीं बदली है।)

अब हमें यह सुनिश्चित करने की आवश्यकता है कि सेटिंग्स स्वचालित रूप से लागू हो जाएं। उदाहरण के लिए, आप cpufreq (4) ड्राइवर को संशोधित कर सकते हैं ताकि PSV मान अपनी तालिका से लिया जाए, न कि ACPI के माध्यम से। लेकिन यह असुविधाजनक है, यदि केवल इसलिए कि आपको सिस्टम को अपडेट करते समय ड्राइवर को पैच करना याद रखना होगा, और सामान्य तौर पर - यह एक समाधान की तुलना में एक गंदे हैक की तरह दिखता है। आप शायद अभी भी किसी तरह पैच पॉवरड (8) कर सकते हैं, जो लगभग उन्हीं कारणों से खराब है। आप बस स्क्रिप्ट चला सकते हैं, एमएसआर को सीधे लिखकर वोल्टेज को कम कर सकते हैं (जो वास्तव में, मैंने "स्थिर" वोल्टेज निर्धारित करने के लिए किया था), लेकिन फिर आपको राज्यों के बीच संक्रमण को याद रखना और स्वतंत्र रूप से संभालना होगा (न केवल पी -स्टेट्स, सामान्य तौर पर, कोई भी, उदाहरण के लिए, जब लैपटॉप नींद से जागता है)। यह बात भी नहीं है।

यदि हमें ACPI के माध्यम से PSV मान मिलते हैं, तो DSDT में _PSS तालिका को बदलना सबसे तार्किक है। सौभाग्य से, आपको इसके लिए BIOS के साथ छेड़छाड़ करने की आवश्यकता नहीं है: FreeBSD एक फ़ाइल से DSDT लोड करने में सक्षम है (हम पहले से ही Habré पर ACPI तालिकाओं के संशोधन के बारे में एक से अधिक बार लिख चुके हैं, इसलिए अब हम इस पर ध्यान नहीं देंगे। विवरण)। DSDT में आवश्यक फ़ील्ड बदलें:

_PSS . के लिए अंडरवोल्टिंग पैच

@@ -7385.8 +7385.8 @@ 0x00006978, 0x0000000A, 0x0000000A, - 0x0000112B, - 0x0000112B + 0x0000111D, + 0x0000111D), पैकेज (0x06) @@ -7395.8 +7395.8 @@ 0x000059D8, 0x0000000A, 0x0000000E, - 0x00000E25, - 0x00000E25 0x00000E12, + 0x00000E12), पैकेज (0x06) @@ -7405.8 +7405.8 @@ 0x00005208, 0x0000000A, 0x0000000A, - 0x00000C20, - 0x00000C00C + 0x00000) 0x06) @@ -7415.8 +7415.8 @@ 0x00004650, 0x0000000A, - 0x00000A, 0x0000000 , - 0x00000A1C + 0x00000A07, + 0x00000A07), पैकेज (0x06) @@ -7425.8 +7425.8 @@ 0x00003E80 0x0000000A, 0x0000000A, - 0x00000817, - 0x00000817 + 0x00000802, + 0x00000802), पैकेज (0x06) @@ -7435.8 @ 0x000032C8, 0x0000000A, 0x0000000A, - 0x00000612, + 0x00000612))


एक नई एएमएल फ़ाइल (एसीपीआई बाइटकोड) संकलित करें और /boot/loader.conf को संशोधित करें ताकि फ्रीबीएसडी डिफ़ॉल्ट के बजाय हमारे संशोधित डीएसडीटी को लोड करे:

Acpi_dsdt_load = "हाँ" acpi_dsdt_name = "/ रूट / undervolt.aml"
वह, सामान्य तौर पर, सब कुछ है। यदि आप प्रोसेसर बदलते हैं तो इन दो पंक्तियों को /boot/loader.conf में टिप्पणी करना सुनिश्चित करें।

यहां तक ​​​​कि अगर आप नाममात्र वोल्टेज को कम नहीं करने जा रहे हैं, तो प्रोसेसर राज्यों (न केवल पी-स्टेट्स) के प्रबंधन को ट्यून करने की क्षमता काम आ सकती है। दरअसल, अक्सर ऐसा होता है कि BIOS "वक्र" तालिकाओं को गलत तरीके से, अपूर्ण रूप से भरता है, या उन्हें बिल्कुल भी नहीं भरता है (उदाहरण के लिए, क्योंकि सेलेरॉन ईएसटी का समर्थन नहीं करता है, और निर्माता आधिकारिक तौर पर इसके प्रतिस्थापन के लिए प्रदान नहीं करता है)। ऐसे में आपको सारे काम खुद करने होंगे। ध्यान दें कि अकेले _PSS तालिका जोड़ना पर्याप्त नहीं हो सकता है; उदाहरण के लिए, सी-स्टेट्स _CST तालिका द्वारा निर्दिष्ट किए जाते हैं, और इसके अतिरिक्त, आपको स्वयं नियंत्रण प्रक्रियाओं (प्रदर्शन नियंत्रण, _PCT) का वर्णन करने की आवश्यकता हो सकती है। सौभाग्य से, यह सरल और काफी विस्तृत है, उदाहरणों के साथ, एसीपीआई विनिर्देश के आठवें अध्याय में वर्णित है।

जीएनयू / लिनक्स में अंडरवोल्टिंग

सच कहा जाए, तो पहले मुझे लगा कि मेरे लिए जेंटू अंडरवोल्टिंग गाइड को पढ़ना और इसे फ्रीबीएसडी के लिए अनुकूलित करना पर्याप्त होगा। यह इतना आसान नहीं निकला, क्योंकि दस्तावेज़ बेहद बेवकूफ़ निकला (जो वास्तव में Gentoo Wiki के लिए अजीब है)। दुर्भाग्य से, मुझे उनकी नई साइट पर ऐसा कुछ नहीं मिला, मुझे एक पुरानी प्रति से संतोष करना पड़ा; और हालांकि मैं समझता हूं कि इस गाइड ने अपनी प्रासंगिकता खो दी है, फिर भी मैं इसकी थोड़ी आलोचना करूंगा। :-)

किसी कारण से, किसी कारण से, तुरंत, युद्ध की घोषणा किए बिना, उन्हें कर्नेल पैच करने की पेशकश की जाती है (फ्रीबीएसडी में, एक मिनट के लिए, हमारे पास कोई सिस्टम नहीं है कोडसंशोधित करने की आवश्यकता नहीं थी)। ड्राइवर इंटर्नल में हथौड़ा मारने या कुछ इनिट-स्क्रिप्ट में कुछ "सुरक्षित" वोल्टेज के मूल्यों को लिखने के लिए, यह स्पष्ट नहीं है कि वे किसके द्वारा और कैसे प्राप्त किए गए थे, एक विशेष तालिका से (जिसमें पेंटियम एम 780 का मजाक उड़ाया जाता है) एक पंक्ति जिसमें केवल प्रश्न चिह्न होते हैं)। सलाह का पालन करें, जिनमें से कुछ ऐसे लोगों द्वारा लिखे गए हैं जो स्पष्ट रूप से नहीं समझते कि वे किस बारे में बात कर रहे हैं। और सबसे महत्वपूर्ण बात, यह पूरी तरह से स्पष्ट नहीं है कि कुछ संख्याओं के ये जादुई प्रतिस्थापन दूसरों के लिए क्यों और कैसे काम करते हैं; कर्नेल को पैच करने और पुनर्निर्माण करने से पहले ईएसटी को "स्पर्श" करने का कोई तरीका नहीं है, कभी भी एमएसआर रजिस्टरों का उल्लेख नहीं करना और कमांड लाइन से उनके साथ काम करना। एसीपीआई तालिकाओं के संशोधन को वैकल्पिक और पसंदीदा विकल्प के रूप में नहीं माना जाता है।

माकोस एसीपीआई के साथ काफी निकटता से बातचीत करता है (और सही ढंग से काम करने की उम्मीद करता है), और टेबल को संशोधित करना एक विशिष्ट हार्डवेयर के लिए इसे कॉन्फ़िगर करने के मुख्य तरीकों में से एक है। इसलिए, पहली बात जो दिमाग में आती है वह है अपने डीएसडीटी को उसी तरह डंप और पैच करना। वैकल्पिक तरीका: google: //IntelEnhancedSpeedStep.kext जैसे एक, दो, तीन।

एक और "अद्भुत" उपयोगिता (सौभाग्य से पहले से ही पुरानी) $ 10 के लिए वोल्टेज और आवृत्ति को बदलने की क्षमता खरीदने की पेशकश करती है। :-)

इसे साझा करें