Notebook Energie Verbruik

Door Infant op zaterdag 26 januari 2013 21:52 - Reacties (7)
Categorie: Gemod / Gefix, Views: 2.414

Het leek mij interessant om eens naar wat instellingen op mijn notebook te gaan kijken, en wat voor een effect die op het energie verbruik hebben.

Ik ben sinds kort bezig om een accu voor mijn notebook te maken, met natuurlijk als doel om de door HP geclaimde accu duur van 6.5 uur ook daadwerkelijk te halen.

En nou kan je wel een reusachtige accu in elkaar flansen en onder je notebook bengelen, maar als er ook bespaard kan worden op verbruik, is dat uiteraard ook een stap die genomen moet worden.

Voormijzelf is dit blog een stukje documentatie, gewoon omdat ik alle mooie plotjes anders weg zou smijten en achteraf niet meer weet wat nou bij wat hoorde. Als er iets niet duidelijk is, hoor ik het graag.

Waarschuwing: Het is weer heel lang, en veel. Soms worden dingen met elkaar vermenigvuldigd! Of er worden conclusies getrokken! Ik stel dus voor, dat je eerst een kopje koffie zet.

Ik ga vandaag niks (extra) open maken. Alle besparing wil ik gaan behalen door knopjes in te drukken, en muizen te bewegen, in zeer specifieke volgorde.

Er is op het internet uiteraard wel het een en ander te vinden. Undervolten is het eerste wat de binnen schiet, en is prima in software te doen. Het heeft wel wat haken en ogen, niet elke notebook werkt stabiel bij minder spanning.

De meeste artikelen die ik kon vinden over undervolten op notebooks, lieten zien wat voor een effect dat op de temperatuur heeft. Het doel was daar ook om het ding stiller en koeler te maken, maar ik was meer geÔnteresseerd wat voor een impact het op m'n batterij heeft. Een meting die ik vrij weinig kon vinden.

Meting
In principe is energie besparen heel eenvoudig. Je zet gewoon alles uit wat je niet nodig hebt. Als je in je huis energie wilt gaan besparen, is dit ook een makkelijk punt om te beginnen, en zo werkt het in een notebook dus ook.

Nou ben ik hier in het verleden al wat mee bezig geweest, maar toen beschikte ik niet over een mooi stuk hardware wat mijn notebook van prik kon voorzien, en die prik tegelijkertijd kon meten:
Notebook op een (overkill) desktop voeding.
De notebook is nog steeds tevreden, en er volledig van overtuigd dat hij op een joekel van een originele HP accu loopt, met nog 1 jaar fabrieks garantie...

Bij gebrek aan iets beters, gebruik ik dit ding om elke seconde twee belangrijke meet waardes aan de PC door te geven: De spanning en de stroom, samen het door de notebook opgenomen vermogen.

Beide zijn 'gekalibreerd' tegen mijn enige el-cheapo multimeter, een DT9205A. De "meet weerstand" die zichzelf had gemanifesteerd in de vorm van een stukje koper draad uit de vorige post, is nu vervangen door iets wat ook echt een weerstand is.

Om te beginnen, wanneer de notebook in slaap modus staat, zegt de multimeter dat er c.a. 40mA aan stroom loopt, bij een spanning van 12.35 Volt.

En de plotjes die de nep-accu uitspuugt, zeggen ongeveer hetzelfde:
Verbruik in slaapstand
Spanning is in blauw (eenheid op de linker Y-as). Stroom is in rood (eenheid rechter Y-as). De X-as is tijd in seconden. Negatieve waardes voor stroom betekend dat de 'accu' stroom levert.

Nou denk je natuurlijk: "Wat een brakke plotjes. They're all over the place!"

Maar dat valt wel mee:

Het totale meet bereik van dit ding 0 tot 20.000 mV, en -5000 tot 5000mA is. De rode en groene lijn zijn dus erg ingezoomd.

Notebooks gebruiken op geen enkel moment evenveel stroom. Je verwacht dus wat schommelingen, en ik doe metingen daarom ook een paar minuten.

Als we de spanning met de stroom vermenigvuldigen, krijgen we het vermogen. Ook hier betekend een negatief getal dat de nep-accu vermogen aan het leveren is, aan de notebook.
Het vermogen staat links in het groen weergegeven. Als we de schaal op 0 tot 20 Watt zetten, zie je dat het een vrij nette rechte lijn is.

Ik durf dus nu toch wel te zeggen dat mijn notebook in stand-by 0.5 Watt gebruikt.

Nu ga ik eerst een kijken wat het ding gebruikt, in de configuratie zoals ik hem al een tijdje dagelijks gebruik, namelijk:

- Windows 7 Enterprise N x64 SP1
- Scherm op 50% helderheid.
- WLAN knopje uit.
- Windows Power Plan op "Balanced (recommended)"

De eerst volgende meting is dus wat hij verbruikt, als ik hem gewoon uit m'n tas haal, en aan zet.

Besparen...
Nadat hij opgestart is, start ik een meting. Eens kijken wat dit voor een grafiekjes oplevert:
Idle in desktopNotebook idle in desktop.

Hm... leuk, op die gigantische piekjes na.... wat zouden die zijn?

Ik heb zo'n donker vermoeden dat er een applicatie iets staat te doen...

Op het eerste gezicht lijkt het van niet, maar na een tijdje wachten geeft de taskmanager-plot dinges het volgende:

Task manager plaatje
Notebook 'idle' in taskmanager.

Jahoor, er staat af en toe een programma doorheen te ronken. De schuldige is een programma genaamd sqlservr.exe. Wat is het? Heeft iets met een SQLServer te maken? Dat heb ik helemaal niet nodig. Welke randdebiel heeft dat op mijn notebook gezet?

Wat blijkt... die randdebiel was ik zelf...

Ik heb namelijk Visual Studio 2010 op mijn notebook geÔnstalleerd, en die komt gratis met dit soort rommel die kennelijk ook draait als je Visual Studio niet gebruikt. Dank u wel Microsoft voor weer een prachtig stuk nutteloze software.

Door alleen die applicatie (en twee gerelateerde services) dood te maken, ziet het zaakje er volgens de meting al een stuk beter uit:
Hetzelfde, maar dan zonder sql
Notebook idle in desktop, minus ťťn tamelijk lompe applicatie.

Wauw! Nu al een halve watt besparing en de uitschieters van soms wel 8 extra Watt ook weg. WINST!
Zonder (voor mijn beleving dan) iets van functionaliteit in te leveren!

Dat was eenvoudig.

Zo zijn er natuurlijk nog een aantal eenvoudige, vrij vanzelf-sprekende dingen die ik (en jij) kan doen:
  • Alle applicaties die je niet nodig hebt uit zetten.
  • Animaties, thema's en dat soort ongein uitzetten. Deze belasten de videokaart, een Intel4500HD in mijn geval.
  • De powersave modus in de grafische instellingen activeren.
  • Het Windows Power schema van balanced naar "power saver" zetten.
Het komt er samenvattend op neer: Zet elke knopje, slidertje of bolletje wat je kunt vinden op uit en/of op standje laag.

Om uit te vinden welke processen nou nog meer lompe hoeveelheden energie aan het opslurpen zijn, ga ik de CPU langzamer maken. Het grafiekje wat de taskmanager uitspuugt is namelijk de CPU belasting in procent van het op dat moment totale beschikbare reken vermogen.

Watte? Zeggis noggenkeer?

De CPU in deze notebook, een SL9400, past namelijk allerlei foefjes toe om niet de hele tijd op 1.86GHz en vol vermogen te draaien. Als er niks te doen is, draait hij maar op 800 MHz.
Een applicatie die 10% van de CPU-tijd op 800Mhz gebruikt, gebruikt bij 1800 MHz natuurlijk niet ook 10%, maar minder.

Tijdens deze momenten dat er niks te doen is, gaat deze CPU door zogenaamde P-states (Performace States) heen. Dit zijn een aantal instelbare frequenties met bijbehorende spanningen waar de processor in kan lopen.

Dit gaat normaal helemaal vanzelf, en hier hoef je niks aan te doen. Het zelfde proces treed in werking als hij te warm dreigt te worden. Dan schakelt het ding zelf de klok frequentie omlaag, om zo niet boven zijn temperatuur limiet uit te komen.

Niet elke processor kan even veel stapjes maken, en niet elke processor doet het op dezelfde manier.

Bij de hele Core2 generatie gaat het ongeveer hetzelfde, en die ga ik nu aanpassen met een programmaatje, genaamd Throttlestop.
Hiermee kun je handmatig het ding in bepaalde states dwingen.

Zo heb ik hem nu gereduceerd tot iets dat waarschijnlijk slomer is als een doorsnee Pentium III:
Intens trage Core2Duo

Het valt wel mee, je kunt nog paint openen, maar daar houd het ook wel op.

Als een applicatie nu nog iets van reken kracht nodig heeft, kun je dat makkelijker zien... maar, ik heb alles al aardig weg gewerkt.

Interessant genoeg is het verbruik bij 266 MHz en de laagst mogelijk instelbare spanning niet echt minder geworden. Hoe ik ook met de voltages en frequenties aan klooi, hij blijft idle steeds rond de 8 Watt gebruiken. En ik wil grote vermogens veranderingen zien, anders hoeft het van mij niet.

Een ander programma wat ongeveer hetzelfde kan, is RMClock. De gedachte van dit programma is dat hij (het programma) steeds je CPU frequentie en spanning aanpast, in plaats van dat de CPU dit zelf doet, met het idee dat dat dan beter is.

Voor overclocken is het vast enorm handig en nuttig, maar omdat het programma kennelijk nogal wat rekenkracht vereist, heeft het een averechts effect op dingen zuiniger maken. Voor mijn beleving is het veranderen van frequenties ook niet zo soepel met dit programma (hoe ik de staptijd ook aanpas), waardoor alles wat meer schokkerig aan voelt.

Als je dit programma op "power-on-demand" de processor laat switchen tussen het meest trage, en het meest snelle, ziet het idle verbruik er zo uit:
Idle power verbruik met RMClock

Ook als ik het niet laat switchen, maar gewoon op "doe niks, en wees traag" zet, is RMClock kennelijk zo enorm reken intensief, dat er hoe dan ook meer verbruikt gaat worden.

Als ik hem namelijk vast op 1.86GHz zet, gebruikt hij ook 8 Watt idle, zonder die 1.2 Watt grote piekjes.

RMClock mocht niet baten.

Met minder, of zelfs geen extra software, kunnen we toch nog wat extra winst gaan behalen.:

Als ik het "Power Saver" plan van Windows selecteer, veranderd er visueel gezien een belangrijk ding, namelijk, Windows Aero wordt uitgeschakeld.
Dit power plan zet alle hardware waarvan Windows weet hoe het werkt in een low-power mode. Ik zeg dit, omdat als de hardware geen fatsoenlijke driver heeft, Windows er ook niet tegen kan praten om het te vertellen: "Joh, doe eens uit gaan!"

En zo is hier het resultaat van ťťn "power-saver" radio-bolletje indrukken:
Windows "Power saver" plan

Hm, dit is toch wel weer een aardige besparing, en verder:

Als ik bij het Intel Graphic properties-ding (de tool die bij deze grafische chip zit) alles op "save", "battery" en "gebruik zo min mogelijk" zet, begint de Windows omgeving grafisch gezien nog wel wat meer af te takelen, maar het helpt toch weer een beetje:
Graphics op standje -1
Het uitschietertje is een proces-je die zoiets heeft van: "Aah, ik wil ook!", maar voor de rest zitten we nu op ongeveer 6.2 Watt. Toen ik begon was dat zo rond de 8.5.

Wat hebben we verder nog? Het scherm?

Het verschil in dit scherm tussen 100% licht(wat binnen veel te fel is), en 0% licht (wat onleesbaar is) is maar iets van 1 Watt in dit model. Het is een vrij klein paneel, met LED verlichting. Deze stond in alle voor gaande metingen in continu aan, en op 50% helderheid, en pas ik zo doende niet meer aan.

Nu heb ik iets waarmee HP aan de geclaimde batterij tijd van 6.5 Uur komt!

De standaard accu is namelijk 44 Wh. En 44Wh /6.2 Watt is ongeveer 7 uur.

Ja!

Maar stel nu dat ik iets wil doen? Bijvoorbeeld een documentje tikken?
Laat ik daar niet een lomp tekst verwerk pakket voor gebruiken zoals Office, maar iets zoals Notepad++.

De volgende meting is wat 5 minuten slap lullen in Notepad++ aan verbruik oplevert:
Tiep-sessie in Notepad++Tikken in Notepad++, nog steeds in het energy-saver plan.

Een gemiddelde van 7.4Watt. Tekst typen kost deze notebook dus 1.2 Watt aan energie, dat vind ik best wel veel.

Dat betekend, dat de schatting van 6.5 Uur van HP bijvoorbeeld gebaseerd kan zijn op op 50% van de tijd niks doen, en 50% van de tijd typen. Is dat representatief voor de zakelijke markt? Ik weet het niet...

Ja... maar halloo! Ik doe wel iets!
Tot nu toe heb ik niet echt spannende dingen gedaan. Programma's uitzetten, op Windows power plans geklikt en alle sliders die je tegenkomt op "low power" zetten. Iedereen had wel kunnen bedenken dat dat besparing oplevert.

Deze processor is vol gepropt met Power Saving features. Als ťťn van de twee cores niks te doen heeft, kan hij op een hogere frequentie dan standaard lopen. Dit noemen ze IDA. Met een BIOS-mod kun je die software matig altijd aan zetten, op beide cores.

Een andere feature is EIST. Die kan ik niet uit zetten. Wat die doet is afhankelijk van de belasting de Multiplier aanpassen en de CPU spanning.

Dit gaat dus allemaal automatisch, wat op zich fijn is.

Zoals ik al eerder zij, is dit voor elke processor anders, en de meeste tools waarmee je iets kan aanpassen, zijn soms processor of zelfs notebook-model specifiek.

De ThrottleStop applicatie werkt op de meeste notebooks met een Mobile Core2Duo, en volgens mij zelfs ook op de Core i processoren.

Nu ik zonder rigoureuze ingrepen het idle-verbruik iets van 2 Watt gereduceerd heb, c.a. 25%, wordt het tijd om naar het maximum verbruik te gaan kijken.

Je kan dit op twee manieren aanpakken:
1: Prestaties verminderen door de CPU een factor x trager te maken. Hij wordt dan minder snel, maar verbruikt ook minder energie.
2: Geen prestatie concessies doen, en alleen de CPU spanning aanpakken. Even snel, met ook minder energie.

De volgende metingen zijn met dezelfde instellingen als het minimum verbruik gedaan, gezien ik de notebook daar toch wel in wil laten.

Dit houd in dat ik in het "power saver" plan zit, scherm altijd aan op 50%.

Manier 1
In dit plan, ga ik de minimum en maximum processor state aanpassen.
Windows 7: Change Advanced power settings
Standaard staat hij zo ingesteld: 5% minimum, 100% maximum.

Dit is dus eigenlijk hetzelfde als RMClock doet, maar dit zit vrij diep in Windows ingebakken, en.... is een stuk eenvoudiger.

Dit heb jij ook, als het goed is. Met CPU-z kun je bekijken wat voor een effect het heeft.

Als je het minimum en maximum aanpast en beide op 100% zet, veranderd de processor snelheid bij mij naar 2.1GHz.

Zet ik het minimum en maximum op 0%, veranderd de snelheid naar 800MHz.

"Leuk Infant echt waar. Maar, wat heb ik daaraan?"

Het boeit in mijn geval niet of ik hem op 800MHz of 2100MHz zet. Het idle verbruik veranderd zo weinig dat ik het in ieder geval niet kan meten.

Als ik hem op de standaard instelling laat (5% min, 100% max) en wPrime1.55 3 keer draai, krijg ik 3 keer een score van 41.5 seconden, en het volgende verbruik:
wPrime 1.55

Laat je het een tijdje draaien, stabiliseert het verbruik op 19.8 Watt. Dat is een toename van c.a. 13.6 Watt.

Okee.

De minimum waarde aanpassen in het power plan heeft geen effect. Ik krijg steeds een score van c.a. 41.5 seconden.

Wat als ik het maximum van 100% naar 50% terug schroef?

Je zou denken, dan duurt alles 2x zo lang.... en verbruikt het de helft.

De score is steeds rond de 96 seconden, en het grafiekje is nu:
wPrime 1.55

Het berekenen heeft 2.3x zo lang geduurd, en het verbruik zit op 11.3 Watt, een toename van 5.1 Watt.

De vorige toename was 13.6 Watt. Als het berekenen 2.3x zo lang duurt, verwacht je dat de toename met een zelfde factor schaalt. 5.9 Watt.

Maar er is nu maar 5.1 Watt verbruikt. Dat is zuiniger! Waarom?!

Hoe hoger de frequentie in een CPU, de te meer spanning heeft hij nodig. 2x zoveel frequentie is in de zelfde prosessor, in theorie, twee keer zo snel.
Helaas moet ook de spanning ietsje toenemen, en als je de Speedstep wiki gezien had, heb je deze formule vast ook al gezien:

P = C*V2*f

Het vermogen, P, wordt 2x zo veel als je f (de frequentie) ook 2x zoveel maakt. Helaas zorgt een vervelend stukje natuurkunde ervoor dat de spanning ook ietsje omhoog moet. En deze zorgt in steeds meer toenemende mate voor extra vermogen.

Het uitgans punt van Intel, en daar hebben ze prima gelijk in, is nu als volgt:

Stel: Je hebt ťťn ding te doen, bijvoorbeeld een berg priem getallen uitrekenen. Als je daarmee klaar bent, mag je naar huis.

Je kunt nu kiezen om er 41.5 seconden over doen. Gedurende die tijd gebruikte het hele systeem 19.2 Watt.

Optie twee is dat je er 96 seconden over kan gaan doen, gedurende welke het gehele systeem 11.3 Watt gebruikt.

En we hadden eerder gezien dat langer er over doen voor de processor efficiŽnter is, dus je zou zeggen optie 2 is beter.

De hoeveelheid energie die deze twee opties verbruiken, in Joules, rekenen we beide uit met de eenvoudige formule:

J = W*s

96*11.3 = 1085 Joules
41.5 * 19.2 = 797 Joules.

Ofterwijl: De eerste meting is een stuk beter, want dat scheelt gewoon even 300 joules aan energie, ook al was de processor wat minder efficiŽnt, het hele zaakje hoeft minder lang aan te staan.
In dit geval slurpt de andere rommel, zoals o.a. het scherm en gewoon de hele notebook veel meer energie.

Dit concept heet "rush to idle". En houd dus in, dat werk sneller afronden energie zuiniger is, ook al is het werk uitrekenen zelf ietsje minder efficiŽnt.

Nu kun je zelf wel bedenken dat hoe groter en lomper de CPU wordt, hoe groter zijn aandeel is aan het totale verbruik. Er is dus ook vast een systeem te verzinnen wat energie-efficiŽnter is als het op 50% capaciteit werkt, t.o.v. 100%. Als je dit dus te extreem maakt, heeft de rush-to-idle strategie niet echt zo'n zin meer.

Manier 2
Hier moet je zelf wat gaan experimenteren. Met ThrottleStop kan ik de CPU spanning op bijna zijn aller laagst zetten, 0.950 Volt.

Standaard staat hij op 1.075 Volt ingesteld, HWInfo kan een mooi tabelletje laten zien waarin de frequenties met bijbehorende spanningen staan.

De volgende meting begint met WPrime die een 1024M benchmark draait:
Afname bij CPU undervolten
In het begin zie je hetzelfde vermogen opgenomen worden als voorheen, 20 Watt ongeveer.

Vervolgens zet ik met Throttlestop tijdens het draaien van de benchmark, de spanning van 1.075 Volt naar 1.000, en dan naar 0.950 Volt.

Het verbruikt neemt meteen af, en dit kan hij zo stabiel volhouden. Er wordt nu maar 16.5 Watt verbruikt in plaats van de eerder gemeten 19.8 Watt.

Nog steeds kan hij de enkele benchmark in 41.5 seconden uitvoeren. Er duurt niks langer, het is nog even snel. Het verbruikt gewoon minder.

Samenvatting
Vermogen meten is lastig. Het is een ramp om alle programma's goed uit te krijgen onder Windows 7, maar ik heb nu wel een aantal degelijke metingen kunnen doen waar ik iets aan heb.

- Applicaties en services uitzetten helpt om de CPU zo min mogelijk te belasten. (Joh...)
- Het "power-saver" plan helpt aanzienlijk om zoveel mogelijk hardware in low-power modus te zetten.
- Idle maakt de CPU-frequentie en spanning niet super veel uit.
- Onder load maakt het zeer veel uit, ik heb een afname van 15-20% op het totale verbruik gerealiseerd.

Er zijn vast nog 100 andere dingen die ik kan doen, maar deze zijn het eenvoudigst en leveren vrij veel besparing op.

Vooral het under-volten, wat op zich helemaal geen kwaad kan, is alleen met dubieuze 3rd-party software te realiseren. Niemand bied jouw de vrijheid met dit soort idioot simpele aanpassingen, even alles 20% zuiniger te maken....want elke aanpassing valt natuurlijk niet onder de garantie.

Stel nu.... je notebook werkt op een accu. En je wilt deze zo min mogelijk mishandeld hebben.
In plaats van steeds pieken van 20 Watt eruit te knijpen, kun je het zaakje zo instellen dat er maximaal maar de helft, 10 Watt uit je accu gevraagd wordt.

Als ik naar dit soort metingen kijk, heb ik het vermoeden dat vooral op oudere accu's, een "ik gebruik nu de helft" knopje, een forse verlenging kan gaan opleveren.... hm.....

Volgende: Dooie Fiets 04-'13 Dooie Fiets
Volgende: Domme Batterijen - Spoof 12-'12 Domme Batterijen - Spoof

Reacties


Door Tweakers user mux, zaterdag 26 januari 2013 23:42

Awesome. Is-ie nu klaar?


Door Tweakers user Robin91, zondag 27 januari 2013 10:46

Je accu :)
Was heel interressant om te lezen, hoe gaat het daarmee?

Door Tweakers user Infant, zondag 27 januari 2013 10:56

Zo iets dacht ik al. Dank voor jullie bezorgdheid.

Volgende week komt de farnell envelop binnen, en ga ik hem op bouwen. En dan.... wordt dat gedocumenteerd.

Door Tweakers user Eegee, zondag 27 januari 2013 18:42

sqlservr.exe. Wat is het? Heeft iets met een SQLServer te maken? [...]
Visual Studio 2010 [..] komt gratis met dit soort rommel die kennelijk ook draait als je Visual Studio niet gebruikt. Dank u wel Microsoft voor weer een prachtig stuk nutteloze software.
SQL Server rommel noemen omdat je het niet nodig hebt. Toen ben ik maar gestopt met lezen.

Door Tweakers user dcm360, zondag 27 januari 2013 23:04

Eegee schreef op zondag 27 januari 2013 @ 18:42:
[...]

SQL Server rommel noemen omdat je het niet nodig hebt. Toen ben ik maar gestopt met lezen.
Software die door iets meegeÔnstalleerd wordt, resources vraagt en niet eens gebruikt wordt kan je naar mijn mening nauwelijks anders typeren dan 'rommel'. Zeker als het als gevolg heeft dat de accu van mn laptop 10% minder lang mn laptop van stroom kan voorzien. Ondertussen denk ik al jaren dat de Microsofts en Adobe's van deze wereld dat wel eens door gaan hebben, maar het tegendeel blijkt helaas de waarheid te zijn,

Door Tweakers user i-chat, maandag 28 januari 2013 08:13

Eegee schreef op zondag 27 januari 2013 @ 18:42:
[...]

SQL Server rommel noemen omdat je het niet nodig hebt. Toen ben ik maar gestopt met lezen.
fanboy mutch...

@dcm360 -1 feeding the troll... maar verder heb je wel gelijk...

Reageren is niet meer mogelijk