Tämä oppaan osa kuvaa MitViDi — Mittarit vihreän digitalisaation julkisiin ICT-hankintoihin-hankkeen osana kehitetyn empiirisen mittausjärjestely virrankulutuksen määrittämiseksi.

Opas jakaantuu seuraaviin osioihin:

  1. MitViDi-virranmittauksen mittausjärjestely
    1. Virranmittausprosessin yleiskuvaus
    2. Virtamittauslaitteistojen kartoitus
    3. Virtamittauslaitteiston hankintasuositus
      1. SUT (2 vaihtoehtoa)
      2. Virtamittaus
    4. Mallikokoonpanot
  2. Mittauskokoonpanon kytkennän arkkitehtuurikuvaus
  3. Ohjelmistopohjainen virranmittaus

MitViDi-virranmittauksen mittausjärjestely

Virranmittausprosessin yleiskuvaus

Virranmittauksen yksinkertainen prosessi käsittää järjestelmän käyttöskenaarioista lähtevien mittaustapausten määrittelyn, mittausjärjestelyn sekä siihen liittyvien skriptien rakentamisen ja mittausten ajamisen. Mittausten tulosdata analysoidaan ja tarvittaessa käytetään uusien käyttöskenaarioiden tunnistamiseksi. Prosessi on kuvattu seuraavassa:

Yleiskuva virranmittausprosessista

Eri mittausten aikasarjoja yhdessä mittausten painotusten kanssa voidaan käyttää yhdessä tuotantojärjestelmän kulutusmittausten kanssa luotaessa arvio järjestelmän kokonaisvirrankulutuksesta. Sähkön tuotantotapa huomioon ottaen voidaan laatia arvio ohjelmiston ympäristöystävällisyydestä ja CO2-ekvivalenssista.


Yleiskuva virranmittausprosessin ympäristöystävällisyyden arvioinnin perusteista

Virranmittauksen mittaussuunnitelma käyttää MitViDi-hankkeen mittausmenetelmää esimerkiksi ohjelmiston yleisen käytön aiheuttaman virrankulutuksen karkeaa arviointia varten. Päämääränä on sekä pyrkiä testaamaan virtamittauksen toimivuutta ja toisaalta kerätä tietoa erinäisten ohjelmistojen ympäristöystävällisyydestä.

Käytännössä käyttöskenaarioiden perusteella kirjoitetaan testausskripti, joka matkii ihmiskäyttäjän toimintaa mahdollisimman hyvin mutta toimii automaattisesti toistaen joka kerta samat toiminnot. Näitä ajetaan mittauksessa olevalla laitteella, ja joiden aikana käyttöskenaariot toistuvat kymmeniä kertoja. Tämä tarkoittaa, että mittalaitteen testikäyttäjän pitää päästä käsiksi skenaarioissa toteuttaviin toiminnallisuuksiin ongelmitta.

Käyttöskenaarioiden aikaisen mittausdatan pohjalta voidaan tehdä karkeita arvioita käytön aiheuttamasta virrankulutuksesta, ja esimerkiksi tarkastella kuinka vakaasti järjestelmä toimii virrankulutuksen osalta toteutettaessa samoja toimintoja. Skenaariot on muodostettu arvioimalla mitattavan järjestelmän pääasiallisia käyttäjäryhmiä ja tulokset painotetaan tärkeimpien ja useimpien toistuvien skenaarioiden tai toimintojen perusteella.

Taustajärjestelmästä voidaan haluta kerätä kaikkea saatavilla olevaa resurssinkäyttöä kuvaavaa dataa testikäytön ajalta. Erityisesti data virrankulutuksen, tai palvelimen resurssien kulutuksesta testiskenaarioiden takia on arvokasta. Prosessorin, keskusmuistin ja tietoliikenteen käyttö ovat merkittävimmät tekijät ympäristövaikutuksille, joten pelkästään näiden kanssa on myös mahdollista karkeasti arvioida aiheutettua virrankulutusta. Näitä haetaan mitattavan palvelinympäristön kautta.



Virtamittauslaitteistojen kartoitus

Virtamittauslaitteistojen kartoituksen tarkoitus oli selvittää mahdollisia tapoja mitata yleiskäyttöisesti ohjelmiston virrankäyttöä sekä markkinoilta saatavissa olevia mittalaitteistoja, joiden käyttöönotto on mahdollista ohjelmistohankinnassa ilman aiempaa erityisosaamista virranmittaamisesta. Koska mittauslaitteistojen hinta voi nousta verrattain korkeaksi erityisesti pienissä hankinnoissa, olemme rajanneet tarkempaan tarkasteluun yksikköhinnaltaan alle 500 euron tuotteita (osaa laitteista toimitetaan vain EU-alueen ulkopuolelta, mikä myös nostaa kustannuksia). Mittalaitteistoja hankkiessa on syytä muistaa, että järjestelmään suunnitellun mittaamisen laajuus voi johtaa tarpeeseen hankkia useita mittareita eri järjestelmän osille ja/tai kehittäjäkohtaisesti.

Mittauslaitteistoja kartoitettaessa luokiteltiin mittarit seuraaviin kategorioihin: 1) Vaihtovirtamittarit, 2) mittavirtalähteet (virtalähteeseen integroitu virtamittaus), 3) virtalähteeseen kytkettävät mittarit, 4) virranmittauspiirit ja 5) sisäänrakennetut mittarit.

Vaihtovirtamittari on yksinkertaisin käyttää - mittari kytketään kiinteistön virransyötön ja mitattavan tietoteknisen laitteen tai laitekokonaisuuden väliin. Sertifioitu vaihtovirtamittari on myös soveltuva esimerkiksi joihinkin laitesaleihin ja ympäristöihin, joihin monimutkaisten kytkentöjen asentaminen ei ole mahdollista. Vaihtovirtamittaus myös soveltuu hyvin monenlaisten laitteiden mittaamiseen, sillä monia laitteita voidaan syöttää vaihtovirralla.

Vaihtovirtamittarin on tuettava virranmittausta verrattain laajalla skaalalla, sillä laitteiden ja laitekokonaisuuksien virrankulutus voi olla merkittävää. Mittari ei välttämättä pysty mittaamaan suuritehoisimpia laitteita. Vaihtovirtamittarin suurin heikkous on epätarkkuus. Kaikki mitattavat laitteet eivät toimi ideaalina resistiivisena kuormana, joka voi aiheuttaa epälineaarisuutta ja epätarkkuutta. Lisäksi digitaaliset laitteet usein varastoivat sisäisesti virtaa, joka aiheuttaa ajallista epätarkkuutta.

MitViDi-hankkeessa arvioitiin myös vaihtovirtamittausta, mutta varsinaisen mittausjärjestelyn kuvauksessa vaihtovirtamittaus tarjotaan vaihtoehtoisena tapana suorittaa mittaus.

Erilaisia vaihtovirtamittareita on laajasti käytössä ja kodin älytekniikan yleistymisen myötä monia eri älykoti-ekosysteemien vaihtovirtamittareita on saatavilla eri kodin elektroniikan kaupoista. Ohjelmiston virrankulutuksen mittaamista varten näiden suurin rajoite voi olla mittaamisen hienojakoisuuden ja tarkkuuden (esim. ajallisesti useita minuutteja tai tunteja) lisäksi tiedon koneellinen lukeminen osaksi dokumentoitavaa ja toistettavaa mittausprosessia.

Mittavirtalähde tai muu laboratoriovirtalähde on virtalähde, johon on integroitu virtamittaus. Tunnistimme luokittelua varten mittavirtalähteitä, mutta rajasimme ne tarkastelun ulkopuolelle, sillä mittavirtalähteen kustannus voi olla useita satoja tai tuhansia euroja per mitattava kanava (jännitetyyppi). Mittavirtalähteet sopivat erikoissovelluksiin, joissa mittarilta vaaditaan suurta tarkkuutta. Yleiskäyttöiseen virranmittaukseen niiden kustannus saattaa nousta liian suureksi ja toisaalta käyttö rajoittuu yksittäisen tasavirtapiirin mittaukseen.

Hankkeen kontekstin kannalta vaihtovirtamittauksen ohella monipuolisin mittarityyppi ovat virtalähteeseen kytkettävät mittarit. Mittareita on karkeasti kahdenlaisia. Tasavirtalähteeseen kytkettävä mittari voidaan asettaa tarjoamaan yhtä tai useampaa kanavaa pitkin eri jännitetasoja mitattavien laitteiden käyttöön. Mittari kanavoi oman virtalähteensä virtaa. Mittarin tukema jänniteväli tyypillisesti kattaa akkukäyttöisten ja/tai verkkovirtaan kytkettävien tietoteknisten laitteiden sisäisesti käyttämän tasajännitteen vaihteluvälin. Mitattava jänniteväli on myös yleensä myös mittalaitteen oman virtalähteen rajoittama.

Toinen yleinen mittarityyppi on USB-liitäntäinen kytkettävä virtamittari, joka vastaavalla tavalla kanavoi USB-väylän virran mitattavalle laitteelle tai laitteille. USB-väylä myös itsessään käsittää karkean menetelmän virrankäytön mitoittamiseen laitteille. USB-virtamittari rajoittuu USB-väylällä varustettuihin laitteisiin, mutta toisaalta varsinkin EU:n lainsäädännön ja linjausten myötä USB on yleistynyt yleiskäyttöisenä virtaliittimenä erityisesti akkuvirtaisissa laitteissa.

MitViDi-hankkeessa kartoitettiin useita virtalähteeseen kytkettäviä mittareita. Mittareiden sopivuutta arvioitiin niiden tukeman mitattavan jännite- ja virta-alueen lisäksi mittaustarkkuuden (näytteenoton taajuus), hinnan, datankeruun helppouden, yleiskäyttöisyyden ja kalibroitavuuden perusteella. Kartoituksen pohjalta suositeltuun mittausjärjestelyyn poimittiin suositeltavat virtamittarit.

Lisäksi MitViDi-hankkeessa kartoitettiin virranmittauspiirejä, joilla tarkoitamme yksittäisiä virtamittaukseen kykeneviä mikropiirejä. Virtamittaukseen on monenlaisia komponentteja, mutta osa komponenteista vaatii virtamittauksen teorian syvällistä tuntemusta sekä kalibrointia muita, kalibroituja mittalaitteita käyttäen. Virtamittaukseen on myös tehdaskalibroituja piirejä, mutta myös niiden käyttö edellyttää elektroniikan käsittelyä, mikä voi johtaa niiden käyttökelpoisuuden rajallisuuteen yleiskäyttöisessä virtamittaamisessa

Kartoituksessa tunnistettiin viisi erityppistä suosittuina rakennussarjoina tarjottavaa virranmittauspiiriä, jotka tarjoavat tehdaskalibroitua mittadataa ja joita voidaan käyttää virtalähteeseen kytkettävän mittarin tavoin joissakin käyttökohteissa. Markkinoilla olevien virranmittauspiirien valikoima ei kuitenkaan rajoitu kartoituksen listaamiin piireihin. Virranmittauspiirien etu on niiden erittäin matala hinta. Piirit voidaan myös integroida kehitettäviin järjestelmiin, mikäli hankinta käsittää laitteistosuunnittelua. Virranmittauspiirit kuitenkin tarvitsevat tietokoneen tai mikrokontrollerin, jota käytetään mittausdatan prosessointiin.

Edellisten lisäksi joissakin laitteissa on sisäänrakennettuja virtamittareita, joita voidaan käyttää ohjelmiston tasolla virran mittaamiseen. Virranmittaus voi olla saatavilla komponenttikohtaisesti (esimerkiksi prosessori, näytönohjain, SSD-levy, USB-laitteet, kannettavan tietokoneen näytön taustavalo) tai koko järjestelmän osalta (esim. kannettavan tietokoneen hetkellinen kokonaisvirrankulutus).

Kartoituksessa tarkasteltiin seuraavia mittavirtalähteitä ja virtamittareita:

Nimi Hinta Jännite Virta Kanavat Näytteistys Datankerruu Kohde Tarkkuus Muuta
Joy-IT JT-UM25C 100€ 24V 5A 1 500 Hz BT M ei kalibroitu, ei tuettu
ODROID SmartPower 3 <50€ 3 - 18 3A 2 200 Hz USB TTY MA ei kalibroitu, tuettu
Nordic Semi Power Profiler Kit II 100€ 5V (!) 1A (!) 1 100 kHz USB - ei yleiskäyttöinen
Powerwerx PWRcheck+ 250€ 60V 40A 1 ? USB TTY MNAL ei kalibroitu, ei ollut saatavilla hankkeen alussa
VectorFlux ZS-2102-A <750€ 6V (!) 1A (!) 1 1 MHz USB - ei kalibroitu, jännitealue alle 12V, virta-alue ei yleiskäyttöinen, ei saatavilla
Qoitech Otii Arc Pro 850€ 5V (!) 5A 1 4 kHz USB M ei kalibroitu, jännitealue alle 12V, korkea hinta
Joulescope 1300€ 15V 3A 1 250 ksps USB MA kalibroitu, korkea hinta
Sistemi P1150 1000€ 17V 3.2A 1 125 ksps USB MA ei kalibroitu, jännitealue alle 12V, korkea hinta
Adafruit Triple Output <700€ 30V 3A 3 - ei kalibroitu, korkea hinta, mittavirtalähde

Virtamittauslaitteiston hankintasuositus

Virtamittauslaitteiston hankintasuosituksen tarkoituksena on kuvata minimaalinen laitteistojärjestely, jolla yksittäinen virtamittaus voidaan suorittaa mahdollista tuotantojärjestelmää mahdollisimman hyvin edustavalla järjestelmällä. Laitteistojärjestely kuvaa joko palvelin- tai päätelaitetta. Mikäli mittaus halutaan ulottaa kattamaan laajempi järjestely, suosituksen kokoonpano toimii muokattavana lähtökohtana. Suosituksesta on suljettu pois vastaavia järjestelmiä, joiden ominaisuudet eroavat merkittävästi (esim. käskykanta) tyypillisestä edustettavasta järjestelmästä ( PC / ARM).

Kartoituksessa päädyttiin suosittelemaan seuraavia virtamittareita:

  • HardKernel SmartPower 3, laitteille joiden kulutus korkeintaan 50W
  • Powerwerx PWRcheck+, laitteille joiden kulutus korkeintaan 200W
  • Virtamittauspiiri: elektroniikkasuunnittelua vaativaan projektiin INA219, INA260, INA169, CS5463 tai CS5490.

Kartoituksessa päädyttiin suosittelemaan seuraavia mitattavia alustoja:

Kuva mittausjärjestelyn laitealustaksi sopivista korttitietokoneista Tätä dokumenttia varten olemme poimineet edellä kuvatuista yhden mittarityypin ja kaksi mitattavan laitteiston (SUT, system under test) laitteistotyyppiä, joita käyttäen voidaan suorittaa edustavia virtamittauksia. Nämä vaihtoehdot esitetään seuraavassa.

SUT (2 vaihtoehtoa)

Kuva Raspberry PI:sta, jota voidaan käyttää mittausjärjestelyn toteuttamiseen

Mitattavan laitteen (SUT) tarkoitus on edustaa tyypillistä ohjelmistoa ajavaa palvelin- tai päätelaitetta. Virtamittarin toiminnan rajoitteiden vuoksi suositeltava laite on yhtä käyttöjännitettä käyttävä ns. korttitietokone, jonka virrankulutus pysyy mittalaitteiston mittarin käyttöalueen sisällä. Mitattavan laitteiston valikoiman ja määrän laajentamista suositeltujen laitetyyppien ulkopuolelle ei käsitellä tässä oppaassa.

  1. Raspberry Pi 4: https://rpilocator.com/?cat=PI4
  • Raspberry Pi on suosituin markkinoilla myytävä korttitietokone. Sen tärkein valintaperuste on alustan tuttuus ja tuki kehityskäytössä. Alustalle on saatavilla laaja valikoima ohjelmia ja sitä voidaan käyttää myös erilaisiin laiteohjelmointi- ja elektroniikkapainotteisiin sovelluksiin.
  • Suositeltavat spesifikaatiot riippuvat valitusta mitattavasta sovelluksesta
  • Suositus 4 tai 8 GB RAM
  • Suositus väh. 32 GB microSD, jos käytössä Linux
  • Huom! Laite on ARM-pohjainen, joten mitattavan ohjelmiston yhteensopivuus on varmistettava!
  • Huomioi myös hankinnassa USB-näppäimistön ja -hiiren, Cat5e/RJ45-verkkokaapelin, micro HDMI -kaapelin ja muiden oheislaitteiden tarve!

  1. UP 7000 Series: https://up-shop.org/default/up-7000-series.html

Kuva UP Board -laitteesta, jota voidaan käyttää mittausjärjestelyn toteuttamiseen

  • UP 7000 Series on Intelin x86-pohjainen korttitietokone, jonka toimintaperiaate ja yhteensopivuus eroaa hyvin minimaalisesti saatavilla olevista palvelin- ja työasemalaitteistoista. Se kykenee suorittamaan erittäin laajan valikoiman ohjelmistoja ja on erityisen käyttökelpoinen, mikäli ohjelmiston käyttö tapahtuu x86-pohjaisella tuotantolaitteistolla ja ohjelmiston siirtäminen ARM-pohjaiselle Raspberry Pi:lle osoittautuisi työlääksi.
  • Suositeltavat spesifikaatiot riippuvat valitusta mitattavasta sovelluksesta
  • 8 GB RAM (suositus)
  • 64 GB eMMC (suositus)
  • 12V (suositus)
  • x86 / x86-64-pohjainen: tukee tavallisia PC-ohjelmistoja ja käyttöjärjestelmiä
  • Huom! Varmista riittävä muistin määrä testattavan ympäristön kannalta. Laitteen tarjoama 8 GB:n keskusmuisti edustaa monia virtuaalipalvelimia ja kevyitä työasemia. Muistin saatavuutta voidaan rajoittaa ohjelmallisesti.
  • Huom! Tehonkulutus saattaa nousta yli 36W:n varsinkin videoulostuloa ja oheislaitteita käytettäessä! Mikäli laitteen virrankäyttö ylittää mittarin kapasiteetin, valitse mittariksi Powerwerx PWRcheck+ tai valmistajalta vähävirtaisempi laitteistovaihtoehto!
  • Huomioi myös hankinnassa USB-näppäimistön ja -hiiren, Cat5e/RJ45-verkkokaapelin, täysikokoisen HDMI -kaapelin ja muiden oheislaitteiden tarve!

Virtamittaus

Kuva virtamittausjärjestelystä

Suositeltavaksi virtamittariksi on valittu HardKernel SmartPower 3. Valittu virtamittari on verrattain edullinen ja soveltuu erilaisten pienten tasavirtalaitteiden virtamittauksiin. Vaihtoehtoisen Powerwerx PWRcheck+ -mittarin saatavuus oli tilapäisesti heikko hankkeen suunnitteluvaiheen aikana, joten mittaria ei hankittu arvioitavaksi ja se jouduttiin sulkemaan pois suosituslaitteistoa valittaessa. On syytä huomioida, että HardKernel SmartPower 3 ei sovellu niiden 12V laitteiden mittaamiseen, joiden tehonkulutus ylittää 36W.

  1. Hardkernel SmartPower 3:
    • Valitse mukaan Hardkernel PSU
    • Tilaus sisältää myös 5.5mm DC-liittimen
    • Sekä virtalähde (PSU) ja 5.5mm DC-kaapeli ovat myös tilattavissa Suomesta elektroniikkakaupoista
    • PSU-suositus korkeintaan 21V (mittari kestänee sisäisesti 24V)
    • PSU-suositus vähintään 9V, jos SUT-laitteiden toimintajännite on 5V.
    • PSU-suositus vähintään 13V, jos SUT-laitteiden toimintajännite on 5-12V.
    • Monet kannettavien laturit sopivat virtalähteeksi, jos niiden liittimeksi vaihtaa 5.5mm DC urosliittimen rasialiittimellä.

Seuraava lista sisältää mittarin käytön huomioita:

Virtamittarin jännitetaso tulee rajata ennen kytkemistä mittauskanavan osalta SUT:n suosittamalle maksimitasolle (esim. 5V), jotta laite ei rikkoonnu! Tehtäessä 5.5mm DC plug -kytkentöjä on suositeltavaa mitata jännitemittarilla liittimen napaisuus ennen kytkemistä, jotta laite ei rikkoonnu! Mitattaessa ei ole suositeltavaa vaihtaa säädettyä jännitetasoa, jotta laite ei rikkoonnu!


Mallikokoonpanot

Seuraavaksi listattujen mallikokoonpanojen tarkoitus on kuvata virtamittaukseen tarvittavat työkalu- ja komponenttihankinnat. Listaukset eivät kata muita mahdollisia oheislaite- ja kaapelitarpeita.

  • Toimivaksi havaittu kokoonpano Raspberry Pi 4 Model B 8 GB:n (SUT #1) kanssa
    • Raspberry Pi 4 Model B 8 GB
    • Raspberry Pi OS
    • Hardkernel SmartPower 3
    • Hardkernel 19V/7A Power Supply (sisältyy)
    • Hardkernel DC Plug Cable Assembly 5.5mm (sisältyy)
    • 5.5mm DC naaras-naaras -muunnin (kytketään edelliseen)
    • 5.5mm DC uros -> USB-A -välikaapeli (kytketään edelliseen)
    • USB-A -> USB-C OTG-kaapeli (kytketään edelliseen)
  • Toimivaksi havaittu kokoonpano Raspberry Pi 4 Model B 8 GB:n kanssa (ohittaa sulakkeen)
    • Raspberry Pi 4 Model B 8 GB
    • Raspberry Pi OS
    • Hardkernel SmartPower 3
    • Hardkernel 19V/7A Power Supply (sisältyy)
    • Hardkernel DC Plug Cable Assembly 5.5mm (sisältyy)
    • 5.5mm DC naaras rasialiittimellä (kytketään edelliseen)
    • Dupont koiras-naaras -johto (kytketään edelliseen)
    • (Dupont naaras-naaras -johto voitaisiin kytkeä myös suoraan edellisten sijaan, mutta virtamittarin kiristysruuvi voi katkaista liittimen)
    • Kytkentä Raspberryn GND & 5V -GPIO-pinneihin
    • Kokoaminen vaatii risti- tai talttapäisen ruuvitaltan.
  • Toimivaksi havaittu kokoonpano UP 7000 Series (SUT #2) kanssa
    • Hardkernel SmartPower 3
    • Hardkernel 19V/7A Power Supply (sisältyy)
    • Hardkernel DC Plug Cable Assembly 5.5mm (sisältyy)
  • Usean laitteen mittaaminen
    • Yksi Hardkernel SmartPower 3 tukee kahta mittauskanavaa ja sitä kautta kahta samaa tai eri jännitetasoa. Yhteen kanavaan voidaan kytkeä hetkellistä kuormaa korkeintaan 50W / 3A.
    • Useita laitteita voidaan yhdistää yhteen mittauskanavaan 5.5mm DC naaras-monta urosta -haaroittimella.
    • Useita Hardkernel SmartPower 3 -yksiköitä voidaan ottaa käyttöön - tarvittaessa USB-portti voidaan haaroittaa USB-keskittimellä. Laitteistosta ja ajureista riippuen esimerkiksi Linux-isäntäkone tukee korkeintaan 32-128 eri yksikköä.

Mittauskokoonpanon kytkennän arkkitehtuurikuvaus

Yksinkertaisessa mittajärjestelyssä kokoonpano koostuu virtalähteestä ja virtamittarista (PSU), mitattavasta järjestelmästä (SUT) sekä mittausdatan keräävästä ja mittausta koordinoivasta hallintatietokoneesta (PC). Mittausjärjestelyssä virranmittauksen data kerätään suoraan virtamittarilta mittarin USB-protokollaa käyttäen CSV-muodossa. Mitattava järjestelmä viestii lisäksi tarvittaessa eri mitattavia suureita, jotka on kerätty collectd-sovellusta käyttäen. Tieto siirretään verkkolevylle, johon sekä SUT:lta ja PC:ltä on pääsy kummankin verkkoyhteyttä käyttäen.

Askeleen monimutkaisemmassa mittajärjestelyssä kokoonpano koostuu edellisen tavoin virtalähteestä ja virtamittarista ( PSU), jolla on kaksi mittauskanavaa (esim. HardKernel SmartPower 3), jotka on konfiguroitu tarjoamaan virtaa 5V ja 12V laitteille. Kokoonpanossa verkkoreititin on 12V laite ja mitattava päätelaite ja palvelin 5V laitteita. Järjestelyssä käytetään myös virtamittarin kykyä kytkeä virta päälle ja pois mitattavilta laitteilta. Toimintoa voidaan käyttää mm. järjestelmän palauttamiseen alkutilaansa. Toiselle kanavalle konfiguroitu verkkolaite mahdollistaa verkkoliikenteen virrankulutuksen arvioinnin. Muilta osin järjestely on toiminnaltaan samanlainen kuin edellisessä.

Seuraava kuva esittää tätä yksinkertaista mittausjärjestelyä:

Kuva yksinkertaisesta kytkennän arkkitehtuurikuvauksesta

Seuraava kuva esittää tätä askeleen monimutkaisempaa mittausjärjestelyä:

Kuva monimutkaisemmasta kytkennän arkkitehtuurikuvauksesta


Ohjelmistopohjainen virranmittaus

Kullakin virtamittarilla on oma yksilöllinen menetelmä tiedonkeruuseen ja datan lukemiseen. Lähes kaikki selvityksessä käsitellyt mittarit kommunikoivat tietokoneen kanssa USB-väylän välityksellä. Hankintasuositukseksi nostettu HardKernel SmartPower 3 kommunikoi myös USB-väylän siten, että mittari näkyy tietokoneelle sarjaporttina (UART), joka kommunikoi laitteen kosketuskäyttöliittymän kautta asetetuilla yhteysasetuksilla (115200 bps) ja intervallilla. Tyypillisesti PC:n sarjaporttia hyödyntävät ohjelmat voivat lukea laitteen lähettämää tekstimuotoista tulostetta suoraan valitsemalla ensin oikea yhteysnopeus. Yksi mittauspiste ilmenee tulosteesta yksittäisenä rivinä, johon on pilkuin eroteltu mittauskanavan jännite, virta ja teho. Protokollan tarkempi kuvaus on esitetty laitteen virallisella tukisivulla

Suositellun virtamittarin ohjelmoinnin lisäksi MitViDi-hankkeessa selvitettiin muita mahdollisia ohjelmistopohjaisia resurssimittareita, joiden datan pohjalta voidaan arvioida virrankulutusta. Yksi perustelu ohjelmistopohjaiselle virranmittaukselle onkin mahdollisesti hankala tai mahdoton pääsy mittaamaan fyysisesti mitattavaa järjestelmää. Ohjelmistopohjainen mittaus mahdollistaa laitteiden mittaamisen ilman fyysistä pääsyä niiden laitetilaan. Tekniikka tarjoaakin mahdollisuuksia erityisesti palvelinlaitteiden virranmittaukseen. Selvityksen kohteena olleet ohjelmat ovat pääosin Linux-pohjaisia, sillä myös palvelinlaitteet ovat usein Linux-pohjaisia.

Seuraavat kartoituksessa tarkastellut monitorointiohjelmat sopivat huonosti virranmittauksen datankeruuseen, sillä ne toimivat lähinnä interaktiivisesti: top, htop, busybox top, iotop, iptraf, iftop. Joidenkin ohjelmien (esim. Prometheus ja JVM flight recorder) käyttö painottuu järjestelmiin, jotka pohjautuvat Docker-konttien ajoon tai Java-palveluiden tarjontaan. Resurssikäyttöön on kehitetty myös lukuisia etämonitorointiin soveltuvia ohjelmia, jotka kuitenkin aiheuttavat myös resurssikuormitusta mitattavalle järjestelmälle mm. web-käyttöliittymän tarjoamisen tai datan käsittelyn ja visualisoinnin vuoksi. Selvityksessä rajoituttiin sovelluksiin, joiden ei havaittu aiheuttavan etäyhteyksien ylläpidosta aiheutuvaa lisäkuormitusta.

Kartoituksessa luokiteltiin seuraavia työkaluja ja niiden mittaamia suureita:

Työkalu Teho CPU Muisti Verkko Levy Prosessit (*)
collectd X X X X X X
apc ups (ups) X
nut (ups) X
ted (power) X
mic (mic) X
battery (laptop) X
ipmi (ipmi) X
snmp (ipmi) X
mbmon (sensors) X
redfish (sensors) X
sensors (sensors) X
thermal (sensors) X
multimeter (multimeter) X
sigrok (multimeter) X
smart (hdd) X
hddtemp (hdd) X
wireless (wireless) X
gpu_nvidia (gpu) X
intel_rapl (rapl) X
cpu X
cpufreq X
xen X
turbostat X
contextswitch X
memory X
swap X
vmem X
buddyinfo X
dns X
interface X
iptables X
netlink X
ethstat X
madwifi X
disk X
df X
cgroups X
load X
processes X
dbi (db) X
virt X X X X
nmon X X X X X
atop X X X
vmstat X X X X
sysstat/iostat
statsd
java flight recorder X X
rapl-read X
mozilla_rapl X
PAPI X
Intel Power Gadget X
perf X
turbostat X
  • (*) Käyttöjärjestelmän prosessit

Kuvattua listaa voi käyttää myös mittausprosessissa fyysisen laitteiston virranmittausdatan laajennoksena. Mikäli eri lähteistä saadut datapisteet voidaan ajoittaa tarkasti, tulosten välisiä yhteyksiä voidaan käyttää virrankulutuksen tarkempaan analyysiin erittelemään eri resurssityyppien vaikutusta kokonaiskulutukseen.