قياس قيم القوة

على المصنّعين تقديم ملف تعريف استهلاك الطاقة للمكونات في /frameworks/base/core/res/res/xml/power_profile.xml.

لتحديد قيم لملفات الطاقة، استخدِم جهازًا يقيس الطاقة التي يستخدمها الجهاز وينفِّذ العمليات المختلفة التي تحتاج إلى معلومات. قم بقياس استخدام الطاقة أثناء تلك العمليات وحساب القيم (مستخلصة الاختلافات عن استخدامات الطاقة الأساسية الأخرى حسب الاقتضاء).

ونظرًا لأن الهدف من ملف الطاقة هو تقدير استنزاف البطارية بشكل مناسب، يتم توفير قيم ملف تعريف الطاقة بوحدة التيار (أمبير). يضرب إطار عمل Android الوقت الحالي في الوقت الذي كان فيه النظام الفرعي نشطًا، ويحسب قيمة mAh التي يتم استخدامها لتقدير مقدار استنزاف البطارية بواسطة التطبيق أو النظام الفرعي.

يمكن للأجهزة التي تعمل بالإصدار 7.0 من نظام التشغيل Android والإصدارات الأحدث، والتي تتضمّن وحدات تحكّم في البلوتوث والمودم وWi-Fi، تقديم قيم إضافية للطاقة يتم الحصول عليها من بيانات مجموعة الشرائح.

الأجهزة التي تعمل بوحدات معالجة مركزية غير متجانسة

يجب أن يتضمّن ملف الطاقة للأجهزة التي تحتوي على نوى وحدة معالجة مركزية (CPU) ذات بنية غير متجانسة، الحقول الإضافية التالية:

  • عدد الوحدات المعالجة المركزية لكل مجموعة (يتم التعبير عنه في cpu.clusters.cores).
  • سرعات وحدة المعالجة المركزية المتوافقة مع كل مجموعة عنقودية
  • استهلاك الطاقة النشط لوحدة المعالجة المركزية لكل مجموعة.

للتمييز بين استهلاك الطاقة النشط لوحدة المعالجة المركزية وسرعات وحدة المعالجة المركزية المتوافقة للمجموعات، يمكنك إلحاق رقم المجموعة باسم الصفيف. يتم تخصيص أرقام المجموعات بترتيب نوى وحدة المعالجة المركزية في شجرة أجهزة نظام التشغيل. على سبيل المثال، في بنية غير متجانسة تتضمّن مجموعتَين عنقوديتين بأربعة (4) قلبَين:

  • تتألف المجموعة 0 من الوحدات cpu0-3.
  • تتألف المجموعة 1 من الوحدات cpu4 إلى 7.

يستخدم إطار عمل Android أرقام نوى وحدة المعالجة المركزية هذه عند قراءة الإحصاءات من ملفات sysfs في: /sys/devices/system/cpu/cpu<number>/cpufreq/stats.

مثال على وحدات المعالجة المركزية (CPU) والسرعات الخاصة بها:

<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 مللي أمبير تقريبًا -
screen.on الطاقة الإضافية المستخدَمة عندما تكون الشاشة مفعَّلة بأقل درجة سطوع 200 ملّي أمبير يشمل وحدة التحكّم باللمس والإضاءة الخلفية للشاشة. عند ضبط السطوع على 0%، وليس على الحد الأدنى لنظام التشغيل Android الذي يتراوح عادةً بين %10 و%20.
screen.full الطاقة الإضافية المستخدمة عندما تصل الشاشة إلى أقصى درجة سطوع، مقارنةً بالشاشة عند الحد الأدنى لسطوعها. من 100 مللي أمبير إلى 300 مللي أمبير تتم إضافة جزء من هذه القيمة (استنادًا إلى سطوع الشاشة) إلى قيمة screen.on لاحتساب استهلاك الشاشة للطاقة.
wifi.on الطاقة الإضافية المستخدَمة عندما تكون شبكة Wi-Fi مفعَّلة ولكنّها لا تتلقّى إشارات أو تُرسِلها أو تبحث عنها ‫2 مللي أمبير -
wifi.active الطاقة الإضافية المستخدمة عند الإرسال أو الاستقبال عبر Wi-Fi. 31 مللي أمبير -
wifi.scan الطاقة الإضافية المستخدَمة عندما تبحث شبكة Wi-Fi عن نقاط الوصول ‫100 مللي أمبير -
بعدّة لغات" الطاقة الإضافية المستخدَمة عند فك ترميز الصوت أو ترميزه عبر وحدة معالجة الإشارات الرقمية حوالي 10 مللي أمبير تُستخدَم لمعالجة الصوت في وحدة المعالجة الرقمية (DSP).
فيديو الطاقة الإضافية المستخدمة عند فك ترميز الفيديو عبر DSP. حوالي 50 مللي أمبير يُستخدم لفيديو DSP.
camera.avg متوسط استهلاك الطاقة من قِبل النظام الفرعي للكاميرا في تطبيق كاميرا عادي ‫600 مللي أمبير ويكون المقصود عبارة عن تقدير تقريبي لتطبيق يجري معاينة ويلتقط حوالي 10 صور بدقة كاملة في الدقيقة.
camera.flashlight متوسط الطاقة المستخدَمة من وحدة فلاش الكاميرا عند تشغيلها ‫200 مللي أمبير -
gps.signalqualitybased الطاقة الإضافية التي يستخدمها نظام تحديد المواقع العالمي (GPS) استنادًا إلى قوة الإشارة. هذا إدخال متعدد القيم، قيمة واحدة لكل قوة إشارة، من الأضعف إلى الأقوى. ‫30 مللي أمبير، 10 مللي أمبير -
gps.on الطاقة الإضافية المستخدمة عند الحصول على إشارة بنظام تحديد المواقع العالمي (GPS). 50 ملي أمبير -
radio.active الطاقة الإضافية المستخدَمة عندما يُرسِل الراديو الخلوي البيانات أو يتلقّاها من 100 مللي أمبير إلى 300 مللي أمبير -
radio.scanning الطاقة الإضافية المستخدمة عند تنقُّل البرج من خلال لاسلكي خلوي ‫1.2 مللي أمبير -
راديو.on الطاقة الإضافية المستخدَمة عندما يكون الراديو الخلوي مفعّلاً هذا إدخال متعدد القيم، قيمة واحدة لكل قوة إشارة (بدون إشارة، ضعيفة، معتدلة، قوية). ‫1.2 مللي أمبير تزيد بعض أجهزة الراديو من الطاقة عند البحث عن برج خلوي وعدم رصد إشارة. يمكن أن تكون القيم متماثلة أو تنخفض مع زيادة قوة الإشارة. إذا قدّمت قيمة واحدة فقط، يتم استخدام القيمة نفسها لجميع نقاط القوة. إذا قدّمت قيمتَين، يتم استخدام الأولى للإشارة غير المتوفّرة، ويُستخدَم القيمة الثانية لجميع مستويات القوة الأخرى، وما إلى ذلك.
bluetooth.controller.idle متوسط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في البلوتوث في وضع السكون - لا يتم تقدير هذه القيم، ولكنها مأخوذة من ورقة بيانات وحدة التحكّم. إذا كانت هناك حالات متعددة للاستقبال أو الإرسال، يتم احتساب متوسط هذه الحالات. بالإضافة إلى ذلك، يجمع النظام الآن بيانات عمليات البحث عن الطاقة المنخفضة الطاقة (LE) وعمليات البحث عن البلوتوث.

لا يستخدم الإصدار 7.0 من نظام التشغيل Android والإصدارات الأحدث قيم طاقة البلوتوث لـ Bluetooth.active (التي يتم استخدامها عند تشغيل الصوت من خلال تقنية البلوتوث A2DP) والبلوتوث.on (يتم استخدامها عندما تكون تقنية البلوتوث مفعّلة ولكنها غير نشطة).
Bluetooth.controller.rx متوسط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في البلوتوث عند الاستلام -
bluetooth.controller.tx متوسّط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في البلوتوث أثناء الإرسال -
Bluetooth.controller.voltage. متوسّط الجهد الكهربي (مللي فولت) لوحدة التحكّم في البلوتوث -
modem.controller.sleep متوسط الرسم الحالي (mA) لوحدة التحكم في المودم أثناء السكون. 0 ملّي أمبير هذه القيم غير تقديرية، ولكنها مأخوذة من ورقة بيانات وحدة التحكم. إذا كان هناك عدة حالات استلام، يتم حساب متوسط تلك الحالات. إذا كانت هناك حالات إرسال متعددة، يمكن تحديد قيمة لكل حالة إرسال اعتبارًا من Android 9.
modem.controller.idle متوسّط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في المودم في وضع السكون -
modem.controller.rx متوسط الرسم الحالي (mA) لوحدة التحكم في المودم عند الاستلام. -
modem.controller.tx متوسط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في المودم عند الإرسال بمستويات مختلفة من طاقة التردد اللاسلكي هذا الإدخال متعدد القيم بقيمة واحدة لكل مستوى طاقة للإرسال. 100 مللي أمبير، 200 ملّي أمبير، 300 ملّي أمبير، 400 ملّي أمبير، 500 ملّي أمبير
modem.controller.voltage متوسّط الجهد الكهربي (مللي فولت) لوحدة التحكّم في المودم -
wifi.controller.idle متوسط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في شبكة Wi-Fi في وضع السكون - لا يتم تقدير هذه القيم، بل يتم أخذها من ورقة بيانات وحدة التحكّم. إذا كانت هناك حالات متعددة للاستقبال أو الإرسال، يتم احتساب متوسط هذه الحالات.
wifi.controller.rx متوسط الرسم الحالي (mA) لوحدة تحكم Wi-Fi عند الاستلام. -
wifi.controller.tx متوسّط استهلاك التيار (ملّي أمبير) لوحدة التحكّم في شبكة Wi-Fi أثناء الإرسال -
wifi.controller.voltage متوسّط الجهد الكهربي التشغيلي (مللي فولت) لوحدة التحكّم في شبكة Wi-Fi -
cpu.speeds هذا إدخال متعدد القيم يسرد كل سرعة محتملة لوحدة المعالجة المركزية (CPU) بالكيلوهرتز. ‫125,000 كيلوهرتز و250,000 كيلوهرتز و500,000 كيلوهرتز و1,000,000 كيلوهرتز و1,500,000 كيلوهرتز يجب أن يتطابق عدد الإدخالات وترتيبها مع إدخالات mA في cpu.active.
cpu.idle إجمالي الطاقة التي يستهلكها النظام عندما تكون وحدات المعالجة المركزية (وشرائح المنظومة المتكاملة للشرائح الإلكترونية) في حالة تعليق النظام ‫3 مللي أمبير -
cpu.awake الطاقة الإضافية المستخدَمة عندما تكون وحدات المعالجة المركزية في حالة الخمول في جدولة المهام (حلقة الخمول في النواة)؛ النظام ليس في حالة تعليق النظام ‫50 مللي أمبير قد يكون لدى منصتك أكثر من حالة استراحة واحدة قيد الاستخدام مع اختلاف مستويات استهلاك الطاقة، لذا اختَر حالة استراحة تمثيلية لفترات أطول من حالة استراحة المخطِّط (عدة مللي ثانية). راجِع الرسم البياني للطاقة على معدّات القياس واختَر عيّنات تُظهر أدنى استهلاك لوحدة المعالجة المركزية، مع تجاهل العيّنات الأعلى التي خرجت فيها وحدة المعالجة المركزية من وضع السكون.
cpu.active الطاقة الإضافية التي تستخدمها وحدات المعالجة المركزية (CPU) عند التشغيل بسرعات مختلفة ‫100 مللي أمبير أو 120 مللي أمبير أو 140 مللي أمبير أو 160 مللي أمبير أو 200 مللي أمبير تمثّل القيمة الطاقة المستخدَمة من خطوط وحدة المعالجة المركزية عند التشغيل بسرعات مختلفة. يمكنك ضبط السرعة القصوى في النواة على كل سرعة من السرعات المسموح بها وربط وحدة المعالجة المركزية بهذه السرعة. يتطابق عدد الإدخالات وترتيبها مع عدد الإدخالات وترتيبها في cpu.speeds.
cpu.clusters.cores عدد النوى التي تحتوي عليها كل مجموعة من وحدات المعالجة المركزية 4، 2 لا يُشترط ذلك إلا للأجهزة التي تعمل ببنى وحدات معالجة مركزية غير متجانسة. يجب أن يتطابق عدد الإدخالات والترتيب مع عدد إدخالات المجموعة لكل من cpu.active وcpu.speeds. يمثّل الإدخال الأول عدد نوى وحدة المعالجة المركزية في المجموعة 0، ويمثّل الإدخال الثاني عدد نوى وحدة المعالجة المركزية في المجموعة 1، وهكذا.
البطارية.capacity السعة الإجمالية للبطارية بالمللي أمبير في الساعة 3,000 مللي أمبير في الساعة -

عمليات البحث عن الأجهزة التي تستخدم تقنية "البلوتوث منخفض الطاقة" (LE) والبلوتوث

بالنسبة إلى الأجهزة التي تعمل بنظام التشغيل Android 7.0، يجمع النظام بيانات عمليات البحث في البلوتوث المنخفض الطاقة (LE) وعدد عمليات نقل البيانات على شبكة البلوتوث (مثل RFCOMM وL2CAP) ويربط هذه الأنشطة بالتطبيق الذي بدأ عملية البحث. ترتبط عمليات البحث في البلوتوث بالتطبيق الذي بدأ عملية البحث، ولكن لا ترتبط عمليات البحث المجمّعة (وتكون مرتبطة بدلاً من ذلك بتطبيق البلوتوث). بالنسبة إلى تطبيقٍ يُجري عملية مسح ضوئي لمدة N ملي ثانية، تبلغ تكلفة عملية المسح ملي ثانية من وقت الاستقبال وملي ثانية من وقت الإرسال، ويتم تخصيص كل وقت وحدة التحكّم المتبقّي لتحميل/تنزيل البيانات من الشبكة أو تطبيق البلوتوث.