Linux-ajastimen taajuuden lisäämisellä on suorituskyky- ja optimointietuja

Jossain vaiheessa monet meistä Uskalsimme leikkiä kuvernöörien kanssa Järjestelmässämme tämä tehdään suorituskyvyn parantamiseksi tai tiettyyn tarkoitukseen, kuten työmäärään, sovelluksiin, peleihin jne.

Tämän tyyppiset muutokset, Ne eivät yleensä sisälly yleisiin jakaumiin Ja on ymmärrettävää, miksi, koska tämä merkitsee tiimimme resurssien kasvua tai vähenemistä (tapauksesta riippuen).

Mainitsen tämän, koska äskettäin a Googlen insinööri on ehdottanut muutosta la oletusasetukset ja Linux-ytimen ajastin, nostaen sen keskeytystaajuuden 250 Hz:stä 1000 Hz:iin.

Tämä muutos merkitsisi korkeampaa taajuutta tehtävien vaihdossa ja aikamäärän vähentäminen tehtävän ajastimessa, mikäja tehokkuutta voitaisiin parantaa tietyissä skenaarioissa. Tällä hetkellä 250 Hz:tä pidetään tasapainona suorituskyvyn, latenssin ja virrankulutuksen välillä.

Motiivi ehdotukselle

Uno tärkeimmistä puoltavista argumenteista tästä muutoksesta on Suorituskyvyn optimointi laitteissa, joissa on 120 Hz:n näyttö, yleisempi tietokoneissa ja mobiililaitteissa. Nykyisellä 250 Hz:n asetuksella aikakvantisoinnin epätarkkuus on noin puolet kehysajasta, mikä vaikuttaa resurssien allokoinnin tehokkuuteen.

Lisäksi on havaittu, että dynaaminen jännitteen ja taajuuden skaalausmekanismi (DVFS) on taipumus omaksua aggressiivisia taajuuden valintastrategioita hidastumisen välttämiseksi. Tämä voi johtaa tarpeettomaan virrankulutukseen, kun tehtävä on jo käsitelty, mutta prosessori jatkaa toimintaansa korkeammalla taajuudella, koska sen aikakvantti ei ole vielä umpeutunut.

Lisäys tehtävien vaihdon taajuudesta sallisi:

  • Parempi tehokkuus dynaamisessa taajuudenhallinnassa (DVFS).
  • Tarkempi tehtävien ajoitusaikojen kohdistaminen.
  • Suorittimen kuormitustilastojen päivitystiheys lisääntyy.
  • Lyhennetty odotusaika keskeneräisiin tehtäviin.
  • Argumentteja tarkistusta vastaan

Omalta Toinen Googlen insinööri ilmaisi olevansa eri mieltä muutoksen kanssa väittäen sitä Ajastimen taajuuden pitäminen 250 Hz:ssä on edullisinta pienitehoisille laitteille, kuten IoT-levyt ja mobiililaitteet.

Hänen arvionsa mukaan Taajuuden nostaminen 1000 Hz:iin voi lisätä virrankulutusta. Esimerkiksi Android-laitteilla prosessorin kulutuksessa on havaittu joissain tilanteissa jopa 7 % kasvua.

Lisäksi, Korkeampi ajastimen taajuus merkitsisi useampaa uudelleenaktivointia prosessorista. 250 Hz:llä t+1 ms, t+2 ms, t+3 ms ja t+4 ms ajastimet ryhmitellään yhdeksi herätykseksi, kun taas 1000 Hz:llä olisi neljä yksittäistä herätystä, mikä voisi lisätä virrankulutusta.

Suorituskykytestin tulokset

Tietoja tapauksesta, portaali Phoronix suoritti sarjan testejä PC:llä, jossa on AMD Ryzen 9 9950X -suoritin, jotta voit arvioida taajuuden muutoksen vaikutusta. Tulokset olivat ristiriitaisia:

  • MParempi suorituskyky 1000 Hz:llä:
    Llama.cpp
    Nginx
    Super Tux Kart
    Seleeni
    Ytimen käännösajat
  • Paras suorituskyky 250 Hz:llä:
    Darktable
    PostgreSQL
    Rakentamaton
    Ksonoottinen
    tehosekoitin
    SVT-AV1
    RawTherapee

Mitä energiankulutus, tulokset olivat seuraavat:

  • Asetus 1000 Hz:iin:
    Keskikulutus: 144,2 W
    Minimikulutus: 0,18 W
    Suurin kulutus: 202,13 W
  • Asetus 250 Hz:iin:
    Keskikulutus: 144,37 W
    Minimikulutus: 0,07 W
    Suurin kulutus: 202 W

Lopuksi on syytä mainita, että ytimen ajastimen keskeytystaajuuden nostaminen 1000 Hz:iin tarjoaa etuja tietyissä käyttötapauksissa, erityisesti sovelluksissa, jotka vaativat useammin tehtävän vaihtamista ja laitteissa, joissa on korkea virkistystaajuus. Sillä on kuitenkin myös haittoja virrankulutuksen kannalta, erityisesti pienitehoisissa laitteissa ja ympäristöissä, joissa energiatehokkuus on etusijalla.

Tällä hetkellä Ehdotuksesta keskustellaan edelleen Yhteisön sisällä ja sen käyttöönotto riippuu eri käyttöskenaarioiden vaikutusten syvemmästä analysoinnista.