शक्ति मूल्यों को मापना

डिवाइस निर्माताओं को /frameworks/base/core/res/res/xml/power_profile.xml में एक घटक पावर प्रोफ़ाइल प्रदान करनी होगी।

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

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

एंड्रॉइड 7.0 और उच्चतर पर चलने वाले ब्लूटूथ, मॉडेम और वाई-फाई नियंत्रक वाले डिवाइस चिपसेट डेटा से प्राप्त अतिरिक्त पावर मान प्रदान कर सकते हैं।

विषम सीपीयू वाले उपकरण

विषम वास्तुकला के सीपीयू कोर वाले उपकरणों के लिए पावर प्रोफ़ाइल में निम्नलिखित अतिरिक्त फ़ील्ड शामिल होने चाहिए:

  • प्रत्येक क्लस्टर के लिए कुल सीपीयू की संख्या (cpu.clusters.cores में व्यक्त)।
  • प्रत्येक क्लस्टर द्वारा समर्थित सीपीयू गति।
  • प्रत्येक क्लस्टर के लिए सक्रिय सीपीयू बिजली की खपत।

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

  • क्लस्टर0 में cpu0-3 शामिल है
  • क्लस्टर1 में CPU4-7 शामिल है

एंड्रॉइड फ्रेमवर्क इन सीपीयू कोर नंबरों का उपयोग करता है जब यह sysfs फ़ाइलों से आंकड़े पढ़ता है: /sys/devices/system/cpu/cpu<number>/cpufreq/stats

क्लस्टर सीपीयू और गति का उदाहरण:

<array name="cpu.active.cluster0">
<value>200</value>
<value>300</value>
<value>400</value>
</array>
<array name="cpu.speeds.cluster0">
<value>600000</value>
<value>800000</value>
<value>1200000</value>
</array>

<array name="cpu.active.cluster1">
<value>400</value>
<value>500</value>
<value>600</value>
</array>
<array name="cpu.speeds.cluster1">
<value>800000</value>
<value>1200000</value>
<value>1400000</value>
</array>

शक्ति मान

निम्न तालिका उपलब्ध पावर मान सेटिंग्स का वर्णन करती है। AOSP में नमूना फ़ाइल देखने के लिए, power_profile.xml देखें।

नाम विवरण उदाहरण मान टिप्पणियाँ
ambient.on जब स्क्रीन बंद होने के बजाय निष्क्रिय/परिवेश/हमेशा चालू मोड में होती है तो अतिरिक्त बिजली का उपयोग किया जाता है। लगभग 100 एमए -
स्क्रीन चालू न्यूनतम चमक पर स्क्रीन चालू होने पर अतिरिक्त बिजली का उपयोग होता है। 200 एमए इसमें टच कंट्रोलर और डिस्प्ले बैकलाइट शामिल है। 0 चमक पर, एंड्रॉइड न्यूनतम नहीं जो 10 या 20% होता है।
स्क्रीन.पूर्ण न्यूनतम चमक पर स्क्रीन की तुलना में, जब स्क्रीन अधिकतम चमक पर होती है तो अतिरिक्त बिजली का उपयोग किया जाता है। 100 एमए-300 एमए स्क्रीन के पावर उपयोग की गणना करने के लिए इस मान का एक अंश (स्क्रीन की चमक के आधार पर) screen.on मान में जोड़ा जाता है।
wifi.on जब वाई-फाई चालू होता है लेकिन प्राप्त नहीं होता, ट्रांसमिट नहीं होता या स्कैन नहीं होता तो अतिरिक्त बिजली का उपयोग होता है। 2 एमए -
वाईफ़ाई.सक्रिय वाई-फाई पर संचारण या प्राप्त करते समय अतिरिक्त बिजली का उपयोग किया जाता है। 31 एमए -
वाईफ़ाई.स्कैन जब वाई-फ़ाई पहुंच बिंदुओं को स्कैन कर रहा हो तो अतिरिक्त बिजली का उपयोग किया जाता है। 100 एमए -
ऑडियो डीएसपी के माध्यम से ऑडियो डिकोडिंग/एन्कोडिंग करते समय अतिरिक्त शक्ति का उपयोग किया जाता है। लगभग 10 एमए डीएसपी ऑडियो के लिए उपयोग किया जाता है।
वीडियो डीएसपी के माध्यम से वीडियो डिकोडिंग करते समय अतिरिक्त शक्ति का उपयोग किया जाता है। लगभग 50 एमए डीएसपी वीडियो के लिए उपयोग किया जाता है.
कैमरा.औसत एक सामान्य कैमरा एप्लिकेशन के लिए कैमरा सबसिस्टम द्वारा औसत बिजली का उपयोग। 600 एमए इसका उद्देश्य पूर्वावलोकन चलाने वाले और प्रति मिनट लगभग 10 पूर्ण-रिज़ॉल्यूशन चित्र कैप्चर करने वाले एप्लिकेशन के लिए एक मोटे अनुमान के रूप में है।
कैमरा.फ़्लैशलाइट चालू होने पर कैमरा फ़्लैश मॉड्यूल द्वारा उपयोग की जाने वाली औसत शक्ति। 200 एमए -
जीपीएस.सिग्नलगुणवत्ता आधारित सिग्नल की शक्ति के आधार पर जीपीएस द्वारा अतिरिक्त शक्ति का उपयोग किया जाता है। यह एक बहु-मूल्य प्रविष्टि है, प्रति सिग्नल शक्ति, सबसे कमजोर से सबसे मजबूत तक। 30 एमए, 10 एमए -
जीपीएस.ऑन जब जीपीएस सिग्नल प्राप्त कर रहा हो तो अतिरिक्त शक्ति का उपयोग किया जाता है। 50 एमए -
रेडियो.सक्रिय सेलुलर रेडियो संचारित/प्राप्त करते समय अतिरिक्त बिजली का उपयोग किया जाता है। 100 एमए-300 एमए -
रेडियो.स्कैनिंग जब सेलुलर रेडियो टावर को पेज कर रहा हो तो अतिरिक्त बिजली का उपयोग किया जाता है। 1.2 एमए -
रेडियो.ऑन सेल्युलर रेडियो चालू होने पर अतिरिक्त बिजली का उपयोग किया जाता है। यह एक बहु-मूल्य प्रविष्टि है, प्रति सिग्नल शक्ति एक (कोई सिग्नल नहीं, कमजोर, मध्यम, मजबूत)। 1.2 एमए कुछ रेडियो तब शक्ति बढ़ा देते हैं जब वे सेल टावर की खोज करते हैं और सिग्नल का पता नहीं लगा पाते हैं। सिग्नल की शक्ति बढ़ने के साथ मान समान या घट सकते हैं। यदि आप केवल एक मान प्रदान करते हैं, तो सभी शक्तियों के लिए समान मान का उपयोग किया जाता है। यदि आप दो मान प्रदान करते हैं, तो पहले का उपयोग नो-सिग्नल के लिए किया जाता है, दूसरे मान का उपयोग अन्य सभी शक्तियों के लिए किया जाता है, इत्यादि।
ब्लूटूथ.नियंत्रक.निष्क्रिय निष्क्रिय होने पर ब्लूटूथ नियंत्रक का औसत वर्तमान ड्रा (एमए)। - ये मान अनुमानित नहीं हैं, बल्कि नियंत्रक की डेटा शीट से लिए गए हैं। यदि कई प्राप्त या संचारित अवस्थाएँ हैं, तो उन अवस्थाओं का औसत लिया जाता है। इसके अलावा, सिस्टम अब लो एनर्जी (एलई) और ब्लूटूथ स्कैन के लिए डेटा एकत्र करता है।

Android 7.0 और बाद के संस्करण अब Bluetooth.active (ब्लूटूथ A2DP के माध्यम से ऑडियो चलाते समय उपयोग किया जाता है) और Bluetooth.on (ब्लूटूथ चालू होने पर निष्क्रिय होने पर उपयोग किया जाता है) के लिए ब्लूटूथ पावर मान का उपयोग नहीं करते हैं।
ब्लूटूथ.नियंत्रक.rx प्राप्त करते समय ब्लूटूथ नियंत्रक का औसत वर्तमान ड्रा (एमए)। -
ब्लूटूथ.नियंत्रक.tx संचारण करते समय ब्लूटूथ नियंत्रक का औसत वर्तमान ड्रा (एमए)। -
ब्लूटूथ.नियंत्रक.वोल्टेज ब्लूटूथ नियंत्रक का औसत ऑपरेटिंग वोल्टेज (एमवी)। -
मॉडेम.नियंत्रक.नींद सोते समय मॉडेम नियंत्रक का औसत वर्तमान ड्रा (एमए)। 0 एमए ये मान अनुमानित नहीं हैं, बल्कि नियंत्रक की डेटा शीट से लिए गए हैं। यदि कई प्राप्त राज्य हैं, तो उन राज्यों का औसत लिया जाता है। यदि एकाधिक ट्रांसमिट स्थिति हैं, तो प्रत्येक ट्रांसमिट स्थिति के लिए एक मान निर्दिष्ट करना एंड्रॉइड 9 में शुरू होने पर समर्थित है।
मॉडेम.नियंत्रक.निष्क्रिय निष्क्रिय होने पर मॉडेम नियंत्रक का औसत वर्तमान ड्रा (एमए)। -
मॉडेम.नियंत्रक.rx प्राप्त करते समय मॉडेम नियंत्रक का औसत वर्तमान ड्रा (एमए)। -
मॉडेम.नियंत्रक.tx विभिन्न आरएफ पावर स्तरों पर संचारित करते समय मॉडेम नियंत्रक का औसत वर्तमान ड्रा (एमए)। यह एक बहु-मूल्य प्रविष्टि है जिसमें प्रति संचारित शक्ति स्तर पर एक मान होता है। 100 एमए, 200 एमए, 300 एमए, 400 एमए, 500 एमए
मॉडेम.नियंत्रक.वोल्टेज मॉडेम नियंत्रक का औसत ऑपरेटिंग वोल्टेज (एमवी)। -
वाईफ़ाई.नियंत्रक.निष्क्रिय निष्क्रिय होने पर वाई-फाई नियंत्रक का औसत वर्तमान ड्रा (एमए)। - ये मान अनुमानित नहीं हैं, बल्कि नियंत्रक की डेटा शीट से लिए गए हैं। यदि कई प्राप्त या संचारित अवस्थाएँ हैं, तो उन अवस्थाओं का औसत लिया जाता है।
wifi.controller.rx प्राप्त करते समय वाई-फाई नियंत्रक का औसत वर्तमान ड्रा (एमए)। -
wifi.controller.tx संचारण करते समय वाई-फाई नियंत्रक का औसत वर्तमान ड्रा (एमए)। -
वाईफ़ाई.नियंत्रक.वोल्टेज वाई-फाई नियंत्रक का औसत ऑपरेटिंग वोल्टेज (एमवी)। -
सीपीयू.गति यह एक बहु-मूल्य प्रविष्टि है जो KHz में प्रत्येक संभावित CPU गति को सूचीबद्ध करती है। 125000 KHz, 250000 KHz, 500000 KHz, 1000000 KHz, 1500000 KHz प्रविष्टियों की संख्या और क्रम cpu.active में mA प्रविष्टियों के अनुरूप होना चाहिए।
सीपीयू.निष्क्रिय जब सीपीयू (और एसओसी) सिस्टम निलंबित स्थिति में होते हैं तो सिस्टम द्वारा खींची गई कुल बिजली। 3 एमए -
सीपीयू.जागृत जब सीपीयू शेड्यूलिंग निष्क्रिय स्थिति (कर्नेल निष्क्रिय लूप) में होते हैं तो अतिरिक्त शक्ति का उपयोग किया जाता है; सिस्टम सिस्टम निलंबित स्थिति में नहीं है. 50 एमए आपके प्लेटफ़ॉर्म में बिजली की खपत के विभिन्न स्तरों के साथ उपयोग में एक से अधिक निष्क्रिय स्थिति हो सकती है; शेड्यूलर निष्क्रियता की लंबी अवधि (कई मिलीसेकंड) के लिए एक प्रतिनिधि निष्क्रिय स्थिति चुनें। अपने माप उपकरण पर पावर ग्राफ़ की जांच करें और उन नमूनों को चुनें जहां सीपीयू अपनी सबसे कम खपत पर है, उच्च नमूनों को हटा दें जहां सीपीयू निष्क्रिय हो गया है।
सीपीयू.सक्रिय विभिन्न गति पर चलने पर सीपीयू द्वारा उपयोग की जाने वाली अतिरिक्त शक्ति। 100 एमए, 120 एमए, 140 एमए, 160 एमए, 200 एमए मान अलग-अलग गति से चलने पर सीपीयू रेल द्वारा उपयोग की जाने वाली शक्ति का प्रतिनिधित्व करता है। प्रत्येक अनुमत गति के लिए कर्नेल में अधिकतम गति सेट करें और सीपीयू को उस गति पर रखें। प्रविष्टियों की संख्या और क्रम cpu.speeds में प्रविष्टियों की संख्या और क्रम के अनुरूप है।
सीपीयू.क्लस्टर.कोर प्रत्येक सीपीयू क्लस्टर में मौजूद कोर की संख्या। 4, 2 केवल विषम सीपीयू आर्किटेक्चर वाले उपकरणों के लिए आवश्यक है। प्रविष्टियों की संख्या और क्रम cpu.active और cpu.speeds के लिए क्लस्टर प्रविष्टियों की संख्या से मेल खाना चाहिए। पहली प्रविष्टि क्लस्टर0 में सीपीयू कोर की संख्या का प्रतिनिधित्व करती है, दूसरी प्रविष्टि क्लस्टर1 में सीपीयू कोर की संख्या का प्रतिनिधित्व करती है, और इसी तरह।
बैटरी की क्षमता एमएएच में कुल बैटरी क्षमता। 3000 एमएएच -

कम ऊर्जा (एलई) और ब्लूटूथ स्कैन

एंड्रॉइड 7.0 चलाने वाले उपकरणों के लिए, सिस्टम लो एनर्जी (LE) स्कैन और ब्लूटूथ नेटवर्क ट्रैफ़िक (जैसे RFCOMM और L2CAP) के लिए डेटा एकत्र करता है और इन गतिविधियों को आरंभ करने वाले एप्लिकेशन के साथ जोड़ता है। ब्लूटूथ स्कैन उस एप्लिकेशन से जुड़े होते हैं जिसने स्कैन शुरू किया था, लेकिन बैच स्कैन नहीं होते हैं (और इसके बजाय ब्लूटूथ एप्लिकेशन से जुड़े होते हैं)। एन मिलीसेकंड के लिए एप्लिकेशन स्कैनिंग के लिए, स्कैन की लागत आरएक्स समय के एन मिलीसेकंड और टीएक्स समय के एन मिलीसेकंड है; सभी बचे हुए नियंत्रक समय को नेटवर्क ट्रैफ़िक या ब्लूटूथ एप्लिकेशन को सौंपा गया है।