Karkeat laskelmat: Kuinka keskusyksiköt säästävät virtaa

Jos ajattelet laskenta, sanat, kuten suorituskyky, nopeus, kulutus ja tehokkuus, tulevat varmasti mieleen, mutta muutkin, kuten oikeellisuus ja tarkkuus, ovat myös tärkeitä. Tutkijat kuitenkin OPRECOMP hanke on eri mieltä, ja niiden tavoitteena on kehittää täysin erilainen ja joustavampi laskutyyppi tarkkuustietojenkäsittely , joka koostuu, kuten olet tämän artikkelin omistajan jo oletettavasti tekemässä lähentää eikä tarkkoja laskelmia. Kuinka tämän kokoinen prosessori toimisi tietokoneessa aiheuttamatta virheitä?

Erityisesti tehokkuus , joka koostuu suorituskyvyn parantamisesta vähentämällä kulutusta, on tullut erityisen tärkeäksi viime aikoina, ja tutkijat ovat vuosikymmenien ajan yrittäneet löytää vaihtoehtoisia tapoja löytää molempien parhaat arvot. Yksi näistä tutkimuslinjoista koostuu EU: ta koskevan säännön purkamisesta laskelmien tarkkuus , mikä voi olla järjetöntä nykyaikaisessa tietojenkäsittelyssä, mutta jolla, kuten aiomme kertoa teille alla, on paljon järkeä.

Kuinka suorittimet säästävät virtaa

Laskelmien tarkkuus prosessorissa

Lähes kaiken modernin digitaalisen tietojenkäsittelyn taustalla olevan 100 prosentin tarkkuuden olettamuksen purkaminen on OPRECOMP-tutkimuskonsortion ensisijainen tavoite IBM Research Europe Zürichissä. Kun puhumme tietokoneesta ja tarkemmin sanottuna prosessorista, ajattelemme kaikki, että tarkkuuden on oltava ehdoton, mutta monissa sovelluksissa tällainen tarkkuus ei yksinkertaisesti ole välttämätöntä ja kuluttaa liikaa energiaa. Sen sijaan OPRECOMP pyrkii toimittamaan likiarvot juuri oikealla työmäärälle tarvittavalla energiamäärällä ja samalla nopeuttamaan uutta tietojenkäsittelyä. Sitä voimme kutsua "laiskiksi jalostajiksi", jotka tekevät "vähiten vaivaa koskevan lain".

Suorita CPU Código

Digitaaliset tietokoneet käyttävät yleensä monimutkaista koodausjärjestelmää, joka tallentaa numerot muodossa 64 binäärilukua . Monissa tapauksissa sovellukset eivät kuitenkaan vaadi kaikkia näitä numeroita, joten tämän projektin haasteena ei ole vain vähentää virrankulutusta, vaan myös varmistaa, että laskelmien likimääräinen tulos pysyy oikeissa tai ennalta määritetyissä rajoissa tai ainakin että tällaiset rajat voidaan antaa odotetuille tuloksille.

Toisin sanoen: jos prosessori laskee operaation väärin, saamme sinisen virhenäytön ja järjestelmä jumittuu, joten jos prosessori tekisi likimääräiset laskelmat, se ei varmasti toimisi, eikö? Tähän projektiin kuitenkin viitataan tee oikea laskenta, mutta ilman niin monta desimaalia , koska ne ovat hyödyttömiä monissa tapauksissa.

Annamme sinulle idean, annamme esimerkin. Kuvittele, että prosessorin on laskettava luku Pi, jolla, kuten tiedät, on äärettömät desimaalit. Joten kun prosessori sitä lasketaan, se saa 64 desimaalin tarkkuudella, mutta tosiasia on, että sitä pyytänyt sovellus vaatii vain 16 desimaalia (se on esimerkki) vaadittujen toimintojen suorittamiseen, joten loput on kirjaimellisesti laskettu hyödytön tapa. Tästä syystä puhuessamme luvusta Pi emme yleensä sano 3.14159265358979323846… mutta yleensä tyydymme sanomaan, että se on 3.1416, pyöristetään, koska neljän desimaalin tarkkuudella meillä on yleensä tarpeeksi mitä tarvitsemme.

Kuinka karkea laskenta suoritin toimisi?

OPRECOM käsittelee koko laskentapinon fyysisestä laitteistotasosta arkkitehtuurista kääntäjiin, algoritmeihin ja ohjelmistoihin. Se pyrkii tarjoamaan ensimmäisen täydellisen tarkkuuskehyksen tulevaisuuden laskentaan, ja tämän saavuttamiseksi he työskentelevät paitsi tietojenkäsittelyn puolella myös matemaatikoista, tietojenkäsittelytieteistä ja ohjelmistoinsinööreistä koostuvan tiimin parissa. karkeilla laskelmilla, kuten pieni drone, jota käytetään lentämään pitkiä aikoja.

OPRECOMP

Muita erityisiä sovelluskenttiä ovat Big Data -analytiikka, koneoppiminen ja korkean suorituskyvyn tietojenkäsittely (HPC). Kehitetyssä arkkitehtuurissa käsitellään käsittelyä, muistia ja tiedonsiirtoa pienitehoisissa järjestelmissä (milliwatin suuruusluokassa), joita käytetään pienimuotoisissa laitteissa tai liitetyissä kohteissa, suuriin suuritehoisiin tietokonejärjestelmiin, jotka kuluttavat valtavasti (kilowattien suuruusluokassa). .

Projektiryhmä on jo mukauttanut monia olemassa olevia algoritmeja toimimaan ylitarkkuudella: esimerkiksi ryhmä on kehittänyt uuden toteutustavan BLSTM-algoritmista, joka muuntaa kuvat tekstiksi vain 8-bittisellä tarkkuudella. Se menettää vain 0.01% tarkkuuden, mutta vastineeksi vähentää virrankulutusta jopa kertoimella 8. Algoritmi on toteutettu myös laitteistossa, mikä osoittaa, että se voidaan automatisoida ja käyttää todellisissa sovelluksissa.

”Yksi haaste on, että transprecision-laskenta ei ole kovin tunnettua edes tietojenkäsittelijöiden keskuudessa. Automaatio on avain avoimen kansainvälisen yhteisön kasvuun, jotta karkea laskenta on laajan yleisön saatavilla. mukaan lukien insinöörit, joilla ei ole kokemusta epätarkkoista arvioista tai laskelmista.Tässä suhteessa OPRECOMP kehittää transprecision-ohjelmistokehityspakettia, jonka avulla kehittäjät voivat helposti ohjelmoida ja kokeilla transprecision-algoritmeja ja pieniä tietokonelaitteita, kuten PULP. Etenemissuunnitelma nähdä tämä tekniikka jokapäiväisissä sovelluksissa on vielä pitkä, mutta OPRECOMP: n kanssa olemme ottaneet suuren askeleen eteenpäin. " Cristiano Maolssi, projektikoordinaattori.

Tämän projektin loppuun mennessä on luotu uusia likimääräiseen laskentaan perustuvia algoritmeja, uusia vähän energiaa käyttäviä alustoja kyseisen työmäärän suorittamiseksi, ohjelmistoympäristöjen kirjastot, jotka mahdollistavat tämän tyyppisen laskennan, sekä kirjastojen emulointityökalut, jotka nopeuttavat kehityksen prototyyppien luominen. Kaikki tuotetut ohjelmistot on valmistettu avoimen lähdekoodin ja tulokset, kuten FloatX matalan tarkkuuden tietojenkäsittelyohjelmointikirjasto on jo tehnyt otsikoita. Lisäksi IBM on jo mallinnanut perinteisen HPC-järjestelmän prototyyppien kanssa transprecision computing -kiihtyvyyden kanssa.

Loppujen lopuksi tavoitteena on vähentää kaikenlaisten prosessorien kulutusta siten, että niiden ei tarvitse laskea niin tarkasti, ja että likimääräisillä, riittävillä laskelmilla on mahdollista parantaa tehokkuutta huomattavasti.