OS X पर वर्तमान वाट क्षमता की जानकारी कैसे प्राप्त करें?


21

क्या ओएस एक्स स्नो लेपर्ड पर वर्तमान वाट उपयोग जानकारी प्राप्त करने का एक तरीका है? मैं 2010 के मध्य में आईमैक का उपयोग कर रहा हूं, इसलिए मैं सिर्फ बैटरी से संबंधित ऐप नहीं ढूंढ रहा हूं।

क्या ओएस एक्स भी बिजली के उपयोग की निगरानी करता है? क्या मुझे पावर कॉर्ड और आउटलेट के बीच एक बाहरी रीडर का उपयोग करने की आवश्यकता है?

मैं अधिक सुविधाजनक लॉगिंग और आंकड़ों के लिए कमांड-लाइन / एप्सस्क्रिप्ट आधारित समाधानों में सबसे अधिक दिलचस्पी रखता हूं , लेकिन मैं विकल्पों के लिए खुला हूं।


दोनों (@ bmike के & @ michaelmichael के) उत्तर निस्संदेह सही हैं। यहाँ मेटा-प्रश्न यह था कि PSU पर पहले से ही कोई सेंसर / पाठक है, जो "किल-ए-वाट" के काम करने के तरीके की तरह काम करेगा। मुझे लगता है कि इसके लिए जवाब "नहीं" है।

मुझे पता है, यह शायद सिर्फ एक गीला सपना है, लेकिन बोर्ड पर एक वाट मीटर कंप्यूटर को चिल्लाने के लिए आदर्श होगा: "देखो, मैं कैसे पर्यावरण के अनुकूल हूं? सिर्फ इन वाट का उपयोग कर रहा हूं!"


आह!

@ केरी Shotts 'का सुझाव दिया iStat मेनू 3 कर से वाट क्षमता रीडिंग प्राप्त कुछ सेंसर , वाल्ट और amp आँकड़े के साथ। तो मीटर वहाँ हैं, लेकिन मैं कैसे उन्हें प्रोग्रामेटिक रूप से एक्सेस कर सकता हूं?


बाउंटी! सॉलिड कमांड-लाइन सेंसर रीडिंग सॉल्यूशन के लिए या असाधारण रूप से अच्छे 3 rd पार्टी सॉफ्टवेयर की सिफारिश करने के लिए दिया जाएगा (जैसे कि न्यूनतम में सांख्यिकीय और ऐतिहासिक डेटा टूल्स के साथ)।

बस सूचित करने के लिए: उपरोक्त iStat मेनू 3 बिजली से संबंधित सेंसर की सूची देता है:

  • वोल्टेज सेंसर (वोल्ट)
    • प्रत्यावर्ती धारा दिष्ट धारा
    • प्रत्यावर्ती धारा दिष्ट धारा
    • एसी / डीसी शंट
    • सी पी यू
    • सीपीयू 1.8 वी एस 0
    • सीपीयू सीटीटी
    • ग्राफिक्स मॉड्यूल
    • याद
  • वर्तमान सेंसर (Amps)
    • प्रत्यावर्ती धारा दिष्ट धारा
    • सी पी यू
    • CPU VTT
    • ग्राफिक्स मॉड्यूल
  • पावर सेंसर (वाट)
    • प्रत्यावर्ती धारा दिष्ट धारा
    • सी पी यू
    • ग्राफिक्स मॉड्यूल

यह राज्य "सेंसर" करता है, लेकिन उनकी गणना @msanford के रूप में की जा सकती है। मैं प्रोग्रामिक रूप से उस डेटा पर अपने हाथ कैसे ला सकता हूं?


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

1
क्या PSU अपने वर्तमान लोड की रिपोर्ट नहीं करता है (जैसा कि मुझे यकीन है कि यह इसके वोल्टेज की रिपोर्ट करता है)? यदि हां, तो P = IV, या वाट्स = करंट (एम्पीयर में) • वोल्टेज (वोल्ट में)। वाटेज वह चीज नहीं है जिसे सीधे मापा जाता है, बल्कि करंट और वोल्टेज से गणना की जाती है, इसलिए मुझे सेंसर से वाट्स की रिपोर्ट करने की उम्मीद नहीं होगी अगर पहले से ही वोल्टेज और करंट पर रिपोर्ट हो। अगर वह मदद करता है ...
msanford

@msanford यह मदद कर सकता है - अगर कोई हमें बताता है कि PSU से रीडिंग कैसे पढ़ें।
जरी कीनलेन

जवाबों:


20

system_profiler SPPowerDataTypeसबसे अधिक प्रासंगिक जानकारी प्रदान करता है। लैपटॉप पर यह वोल्टेज और एम्परेज की रिपोर्ट करता है जो आपको बिजली की खपत (mVolts × mAmperes × 10 ^ -6 = वाट) दे सकता है। यह वाट क्षमता की भी रिपोर्ट करता है, लेकिन यह वास्तव में ऐप्पल के पावर एडेप्टर द्वारा रिपोर्ट किए गए मेटाडेटा का एक टुकड़ा है, तृतीय-पक्ष पावर एडेप्टर यहां खाली दिखा सकते हैं। चूंकि डेस्कटॉप में रिचार्जेबल बैटरी नहीं होती है, इसलिए बैटरी की चार्जिंग और डिस्चार्जिंग को मापकर बिजली की खपत की गणना करने का कोई तरीका नहीं है।

लेकिन रुकिए, अभी भी उम्मीद है! Apple बहुत सारे स्रोत कोड प्रकाशित करता है, और वाट क्षमता या पावर + mV संकेत के लिए गुगली करता है कि बिजली की खपत के बारे में कुछ कर्नेल एक्सटेंशन को बताया जा सकता है। दुर्भाग्य से, मैं अभी एक स्क्रिप्ट के साथ नहीं आ सकता, लेकिन यह संभव लगता है।


1
मैं देख रहा हूँ कि यह कमांड-लाइन इंटरफेस है System Profiler.app। अफसोस की बात है कि डेस्कटॉप पर, यह सिर्फ सेटिंग्स दिखाता है EnergySaver.prefpaneऔर अगर एक यूपीएस स्थापित है।
जरी किनेलेन

। मेरी rMBP 2015 15 पर ", Amperage और वोल्टेज से अनुभाग बैटरी जानकारी कम या ज्यादा स्थिर है, कम से कम की तुलना में" iStat, हर दूसरे अद्यतन करता है जहाँ से सिस्टम की कुल "मूल्य इसके अलावा, मैंने देखा है Amperage किया जा रहा है 0
जोहानिस Bittner

इसे प्रेम करें; छोटा और सरल। डाउनलोड करने या स्थापित करने के लिए कुछ भी नहीं। यदि लोग रुचि रखते हैं तो मैं (या कोई और) आसानी से इस कमांड से आवश्यक फ़ील्ड खींचने के लिए एक स्क्रिप्ट / कमांड को कोड़ा मार सकता हूं और वास्तविक वाट्सएप का उपयोग कर सकता है।
रिनोगो

अद्यतन: निर्दिष्ट कमांड ने मेरे लिए तब काम किया जब मुझे पहली बार इसकी आवश्यकता थी, लेकिन जब मुझे फिर से इसकी आवश्यकता थी, तो यह काम नहीं किया। यह एम्परेज के लिए अजीब मान प्रदर्शित कर रहा है। शायद मैं सही जगह नहीं देख रहा हूँ। कौन जानता है ... यम।
rinogo

11

यह कमांड-लाइन आवश्यकताओं को पूरा नहीं करता है, लेकिन iStat मेनू 3 के लिए प्रयास करें । यह आपको आपकी मशीन के हर सेंसर के बारे में रीडिंग देता है (जिसमें मेरे लिए एसी / डीसी वॉट्स, सीपीयू वॉट्स और जीपीयू वाट्स शामिल हैं)। मुझे यकीन है कि यह 100% सटीक नहीं है, लेकिन यह मेरी एपीपी बैटरी के सीमित अवरोधों के भीतर काम करने के लिए मेरी मशीन को ट्यून करने में पर्याप्त सटीक से अधिक था।

सभी ने कहा, मेरी मशीन 2010 आईमैक है, इसलिए आपकी मशीन के आधार पर, यह काम कर सकता है या नहीं। इसके अलावा, मैं विशेष रूप से HDD (जो कि न्यूनतम होना चाहिए), या डिस्प्ले के लिए कुछ भी विशेष करने के लिए पावर रीडिंग नहीं देखता (जो कहा गया है, एलसीडी चमक को कम करने से वाट क्षमता काफी कम हो जाती है, इसलिए यह कुल में गिना जाता है)।

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


2
सर्वोत्कृष्ट! अब सवाल यह है कि iStat Menus को सेंसर रीडिंग कैसे मिलती है ...
Jari Keinänen

8

हार्डवेयर मॉनीटर नामक एक पेड एप्लीकेशन है जो कि मैक पर उपलब्ध हर सेंसर को वोल्टेज, करंट और वाट्सएप सहित हर उस चीज तक पहुंच प्रदान करता है जो मुझे लगता है कि आप ढूंढ रहे हैं। इस जानकारी को पढ़ने के लिए एक कमांड लाइन उपयोगिता शामिल है।

मैंने इसका इस्तेमाल पिछले साल एक आईमैक में दोषपूर्ण लॉजिकबोर्ड को ट्रैक करने के लिए किया था और इसे € 7 के लायक पाया। इसमें एक CSV के सेंसर मूल्यों को आउटपुट करने की क्षमता शामिल है जो डेटा के लॉगिंग और विज़ुअल डिस्प्ले के लिए सहायक हो सकता है। मुझे यकीन नहीं है कि यह पीएसयू रीडिंग करता है (जैसा कि मेरे पास मशीन पर ऐप नहीं है)।

आप यहां सॉफ्टवेयर पा सकते हैं: http://www.bresink.com/osx/HardwareMonitor.html

मैं इस कंपनी से बिल्कुल भी जुड़ा नहीं हूं, बस मेरे डायग्नोस्टिक्स शस्त्रागार में बहुत उपयोगी होने का उपकरण मिला है।


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

देर से अपडेट के लिए क्षमा करें, लेकिन, @ लाइकें, आपका +100 अच्छी तरह से योग्य है: मैं पूर्ण +200 देने में संकोच करता हूं क्योंकि हार्डवेयर मॉनिटर प्रतीत होता है कि iStat मेनू 3 की तरह PSU वाट क्षमता नहीं देगा; किसी कारण से HWM केवल CPU A4 CPU High Sides और के लिए पावर सेंसर सूचीबद्ध करता है MXM Graphics Module। महान एप्लिकेशन फिर भी और मैं एक हवा में अपने जवाब से सम्मानित किया होता अगर कुछ अन्य बाउंटी उत्तर स्वत: आधा-इनाम-पुरस्कार नियमों से मिले होते । जैसा मैंने कहा, +100 अच्छी तरह से योग्य हैं।
जरी किनेलेन

हां, मेरा मानना ​​है कि एचडब्ल्यूएम सेंसर को प्रति मॉडल के आधार पर पढ़ता है इसलिए यह आपके संस्करण पर उपलब्ध है पर निर्भर करता है। क्या IStat Menu 3 ने आपके मॉडल पर भी PSU वाट क्षमता पढ़ी है?
डिजिटलचाइल्ड

दुर्भाग्य से हार्डवेयर मॉनिटर ने 19 जून, 2017 को EOL की घोषणा की। bresink.com/osx/216202/eol.html
walterra

7

IANAEE (मैं इलेक्ट्रिकल इंजीनियर नहीं हूं), लेकिन जैसा कि मैं समझता हूं कि सॉफ्टवेयर के माध्यम से कंप्यूटर की बिजली की खपत को मापना संभव नहीं है। सबसे अच्छा उपाय है कि आप अपने मैक को किल-ए-वॉट जैसी डिवाइस से कनेक्ट करें

यदि आप एक स्क्रिप्ट योग्य समाधान की तलाश कर रहे हैं - और एक दिलचस्प परियोजना - यहाँ एक वायरलेस वाटेज मॉनिटरिंग सिस्टम, या " ट्वीट-ए-वाट " बनाने के निर्देश हैं ।


7

IStat में डेटा के सभी ioregistry में चाबियाँ से हैं। आप इसका एक डंप ioreg का उपयोग करके कमांड लाइन से खींच सकते हैं:

ioreg -w 0 -l

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


5

बिजली की आपूर्ति में कोई पैमाइश सेंसर मौजूद नहीं हैं।

तर्क बोर्ड ब्लोअर को नियंत्रित करने के लिए कई स्थानों पर तापमान को मापता है और सीपीयू घड़ी की दर को कम करने के लिए अस्थायी निगरानी करता है जब यह ब्लोअर ठंडा हो सकता है।

मुझे लगता है कि कुछ PHD थीसिस एक अपेक्षित बिजली की खपत की गणना करने के लिए प्रशंसक गति और विभिन्न तापमान सेंसर को एकीकृत करने पर किया जा सकता है। गणना करना संभव है और कुछ अंशांकन के साथ, यह बहुत सटीक भी हो सकता है।

वास्तव में चूंकि यह डेटा उजागर नहीं हुआ है या रिकॉर्ड नहीं किया गया है, इसलिए आपको बाहरी रूप से मापना पड़ सकता है। सभ्य घर ऊर्जा काउंटर $ 150 और $ 300 w के बीच हैं

आप एक इकाई को किराए पर ले सकते हैं या खरीद सकते हैं जो आउटलेट के माध्यम से बिजली को मापता है और फिर यह देखने के लिए कुछ परीक्षण चलाता है कि मैक कुछ निश्चित स्थितियों में एक घंटे में कितना बिजली लेता है।

  • बंद
  • नींद
  • बेकार
  • विभिन्न CPU लोड
  • अधिकतम सीपीयू, सब कुछ जा रहा है

तब आप इन सीपीयू उपयोग की निगरानी के साथ सहसंबद्ध कर सकते हैं जो समय के साथ तुच्छ है topऔर चीजों को जोड़ने में सक्षम है।

यह सब इस बात पर निर्भर करता है कि आप वास्तव में डेटा के साथ क्या करना चाहते हैं, यह सीखें कि हार्डवेयर कैसे काम करता है और इसके कुछ अच्छे ग्राफ हैं।


2
+ आपको सूची में और अधिक जानकारी के लिए विज्ञापन infinitum जोड़ना होगा । संभवत: तब तक मैं सभी स्थितियों को कैलिब्रेट कर चुका था, जिन्हें मुझे वर्तमान iMac को बदलने की आवश्यकता होगी: -D हो सकता है कि बस कुछ बाहरी बुनियादी डब्ल्यू एंड kWh मीटर चाल करें, अगर कोई मीटर ऑनबोर्ड नहीं हैं।
जरी किनेलेन

2
:-) खुशी है कि आपको हास्य मिला। मेरा अनुभव है कि अधिकतम शक्ति पर सब कुछ प्राप्त करने के लिए कठोर परीक्षणों के तहत भी Apple द्वारा प्रकाशित विनिर्देशों की तुलना में मैक 20 से 25% कम है ।
bmike

1
@bmike मैं इस बारे में इतना निश्चित नहीं हूं कि, आरएमबी की बैटरी को ड्रेन करने के लिए जाना जाता है जब सीपीयू + जीपीयू पर 85W एडॉप्टर के माध्यम से अपर्याप्त करंट प्रदान करने के कारण पर्याप्त रूप से लोड होता है।
स्टीवन लू

1
@stevenlu मुझे आश्चर्य नहीं होगा अगर नवीनतम 2013 के युग के हार्डवेयर को 2010 के मध्य युग की तकनीक की तुलना में कठिन धक्का दिया जाए जो यहां चर्चा की जा रही है। इसी प्रकार, 10.8 की तुलना में 10.8 पर बिजली प्रबंधन अधिक परिष्कृत है। इसके अलावा - वे आंतरिक बैटरी पर कड़ी मेहनत करते हैं - मेरे अनुभव में एसी एडाप्टर से बस इतना नहीं। यहां तक कि नए यूएसबी-सी पीडी मॉडल भारी आंतरिक खपत / बफ़र + हल्का बाहरी खपत की है कि पैटर्न का पालन
bmike

3

मैंने system_profiler आउटपुट के आधार पर थोड़ी स्क्रिप्ट बनाई है। यह दिए गए वोल्टेज और एम्पीयर का उपयोग करके वाट क्षमता की गणना करता है।

powerstat() {
    b=$(system_profiler SPPowerDataType)
    amp=$(echo "$b" | grep 'Amperage (mA):' | cut -d ':' -f 2 | xargs)
    volt=$(echo "$b" | grep 'Voltage (mV):' | cut -d ':' -f 2 | xargs)
    power=$(($amp * $volt / 1000))
    echo "$b" | grep --color=never -A 1 'Battery Information:'
    echo "$b" | grep --color=never -A 1 'Amperage (mA)'
    echo "      Total Power (mW): $power"
    echo ""
    echo "$b" | grep --color=never -A 99 'AC Charger Information:'
}

आउटपुट कुछ इस तरह है:

$ powerstat
    Battery Information:

      Amperage (mA): -552
      Voltage (mV): 12794
      Total Power (mW): -7062

    AC Charger Information:

      Connected: No
      Charging: No

चार्ज करते समय:

$ powerstat
    Battery Information:

      Amperage (mA): 1545
      Voltage (mV): 12850
      Total Power (mW): 19853

    AC Charger Information:

      Connected: Yes
      Wattage (W): 60
      Charging: No

2
// Build with: gcc psudata.cc -o psudata -framework IOKit
#include <stdio.h>
#include <string.h>
#include <IOKit/IOKitLib.h>

typedef struct {
  uint32_t key;
  char ignored[24];
  uint32_t size;
  char ignored2[10];
  char cmd;
  char ignored3[5];
  float val;
  char ignored4[28];
} smc_t;

int main(void) {
  mach_port_t mp;
  CFMutableDictionaryRef d;
  io_iterator_t it;
  io_object_t svc;
  io_connect_t ioc;
  smc_t req, resp;
  size_t sz = sizeof(resp);
  uint32_t vk  = ('V' << 24) + ('D' << 16) + ('0' << 8) + 'R';
  uint32_t ik  = ('I' << 24) + ('D' << 16) + ('0' << 8) + 'R';
  float v, i;

  IOMasterPort(MACH_PORT_NULL, &mp);
  d = IOServiceMatching("AppleSMC");
  IOServiceGetMatchingServices(mp, d, &it);
  svc = IOIteratorNext(it);
  IOObjectRelease(it);
  IOServiceOpen(svc, mach_task_self(), 0, &ioc);
  IOObjectRelease(svc);
  memset(&req, 0, sizeof(smc_t));
  memset(&resp, 0, sizeof(smc_t));
  req.cmd = 5;
  req.size = 4;
  req.key = vk;
  IOConnectCallStructMethod(ioc, 2, &req, sizeof(req), &resp, &sz);
  v = resp.val;
  req.key = ik;
  IOConnectCallStructMethod(ioc, 2, &req, sizeof(req), &resp, &sz);
  i = resp.val;
  IOServiceClose(ioc);

  printf("%fV %fA %fW\n", v, i, v*i);
  return 0;
}

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

2
system_profiler SPPowerDataType | grep Wattage

क्या मैकबुक प्रो (15-इंच, 2016) पर मेरे लिए चाल चली गई है!


2
यह एसी एडाप्टर के वाट क्षमता की रिपोर्ट करता है, वर्तमान बिजली की खपत नहीं। संदर्भ के लिए:system_profiler SPPowerDataType | grep -C4 Wattage
एडवर्ड एंडरसन

1

मैं मैकबुक 10.6.8 पर हूं और ioreg -l | grep LegacyBatteryInfoमेरे लिए काम किया है।

मैंने पहले कोशिश की

ioreg -l | grep LegacyBatteryInfo | \
    cut -d '{' -f 2 | tr -d \} | tr ',' '=' | \
    awk -F'=' '{print ($2*$10/10^22)}' 

और यह 0 लौटा।

क्या ऐप्पल की देव लाइब्रेरी से कोई समाधान है?

बिजली मीटर पर बाहर क्यों नहीं दिखता है? अपने रीडिंग को रिकॉर्ड करें और फिर एक स्थिर और सामान्य% CPU उपयोग के लिए सहसंबंधित करें। तब आप एक अनुमान प्राप्त कर सकते हैं।


1

यहाँ एक ioregआदेश है जो 'grep' के बिना अधिकांश विद्युत सूचनाओं को प्रिंट करता है। यह मेरी मशीन पर system_profiler की तुलना में बहुत तेज़ी से लौटता है, इसलिए संभवतः स्क्रिप्टेड होने या पृष्ठभूमि में चलने के लिए अधिक उपयुक्त है।

ioreg -w 0 -f -r -c AppleSmartBattery

0

मुझे लगता है कि 10.7 के लिए यह टर्मिनल से काम करना चाहिए:

ioreg -l | grep LegacyBatteryInfo | cut -d '{' -f 2 | tr -d \} | tr ',' '=' | awk -F'=' '{print ($2*$10/10^22)}'


2
ioreg -l | grep LegacyBatteryInfoiMac पर मेरे लिए कुछ नहीं लौटाता।
जरी कीनेलेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.