optimization - Mitä termit "CPU sidottu" ja "I / O sidottu" tarkoittavat?

Translate

Mitä termit "CPU sidottu" ja "I / O sidottu" tarkoittavat?

This question and all comments follow the "Attribution Required."

Kaikki vastaukset

Translate

Se on melko intuitiivinen:

Ohjelma on sidottu suorittimeen, jos se menisi nopeammin, jos suoritin olisi nopeampi, eli se viettää suurimman osan ajastaan yksinkertaisesti suorittimen avulla (suorittaa laskelmia). Ohjelma, joka laskee uudet π-numerot, on tyypillisesti sidottu suorittimeen, se vain murskaa numeroita.

Ohjelma on I / O-sidottu, jos se menisi nopeammin, jos I / O-alijärjestelmä olisi nopeampi. Mikä tarkka I / O-järjestelmä on tarkoitettu, voi vaihdella; Yhdistän sen tyypillisesti levyyn, mutta tietenkin myös verkottuminen tai viestintä yleensä on yleistä. Ohjelma, joka etsii valtavia tiedostoja joillekin tiedoille, voi tulla I / O-sidottuiksi, koska pullonkaula on sitten tietojen lukeminen levyltä (itse asiassa tämä esimerkki on ehkä vanhanaikainen nykyään satojen MB / s: n kanssa SSD-levyiltä).

Lähde
Translate

Suoritin sidottutarkoittaa prosessorin nopeutta, jota prosessorin nopeus rajoittaa. Tehtävä, joka suorittaa laskutoimituksia pienelle joukolle joukkoa, esimerkiksi kertomalla pienet matriisit, on todennäköisesti sidottu suorittimeen.

I / O sidottutarkoittaa prosessin etenemisnopeutta, jota I / O-alijärjestelmän nopeus rajoittaa. Tehtävä, joka käsittelee tietoja levyltä, esimerkiksi laskemalla tiedoston rivien lukumäärä, on todennäköisesti I / O-sidottu.

Muisti sidottutarkoittaa, että prosessin etenemisnopeutta rajoittaa käytettävissä olevan muistin määrä ja kyseisen muistin käytön nopeus. Tehtävä, joka käsittelee suuria määriä muistitietoja, esimerkiksi kertomalla suuria matriiseja, on todennäköisesti sidottu muistiin.

Välimuisti sidottutarkoittaa nopeutta, jolla prosessin etenemistä rajoittaa käytettävissä olevan välimuistin määrä ja nopeus. Tehtävä, joka yksinkertaisesti käsittelee enemmän tietoa kuin mahtuu välimuistiin, sidotaan välimuistiin.

I / O Bound olisi hitaampi kuin Memory Bound hitaampi kuin Cache Bound hitaampi kuin CPU Bound.

Ratkaisu I / O-sidoksiin ei välttämättä lisää muistia. Joissakin tilanteissa pääsyalgoritmi voitaisiin suunnitella I / O-, muisti- tai välimuistirajoitusten ympärille. KatsoVälimuistin tietämättömät algoritmit.

Lähde
Translate

CPU sidottu tarkoittaa, että CPU tai keskusyksikkö on pullolla kaulassaI / Osidottu tarkoittaa, että I / O tai tulo / lähtö, kuten lukeminen tai levylle, verkkoon jne.

Yleensä tietokoneohjelmien optimoinnissa yritetään etsiä pullonkaula ja poistaa se. Tieto siitä, että ohjelmasi on sidottu suorittimeen, auttaa, jotta joku muu ei tarpeettomasti optimoi.

[Ja "pullonkaulalla" tarkoitan asiaa, joka saa ohjelmasi menemään hitaammin kuin muutoin olisi.]

Lähde
Translate

Toinen tapa ilmaista sama idea:

  • Jos suorittimen nopeuttaminen ei nopeuta ohjelmaa, se voi ollaI / Osidottu.

  • Jos I / O: n nopeuttaminen (esim. Nopeamman levyn käyttö) ei auta, ohjelma saattaa olla sidottu suorittimeen.

(Käytin sanaa "saattaa olla", koska sinun on otettava huomioon muut resurssit. Muisti on yksi esimerkki.)

Lähde
Translate

Kun ohjelma odottaaI / O(ts. levyn lukeminen / kirjoittaminen tai verkon lukeminen / kirjoittaminen jne.), CPU voi tehdä muita tehtäviä, vaikka ohjelmasi olisi pysäytetty. Ohjelmasi nopeus riippuu enimmäkseen siitä, kuinka nopeasti IO voi tapahtua, ja jos haluat nopeuttaa sitä, sinun on nopeutettava I / O: ta.

Jos ohjelmassasi on paljon ohjelmaohjeita eikä se odota I / O: ta, sen sanotaan olevan sidottu suorittimeen. Suorittimen nopeuttaminen tekee ohjelmasta nopeamman.

Kummassakin tapauksessa avain ohjelman nopeuttamiseen ei välttämättä ole laitteiston nopeuttaminen, vaan ohjelman optimointi vähentämään tarvitsemansa IO: n tai suorittimen määrää, tai saada se tekemään I / O samalla, kun se suorittaa myös paljon prosessoria tavaraa.

Lähde
Alma Lee
Translate

I / O-sidos viittaa tilaan, jossa laskennan suorittamiseen kuluva aika määräytyy pääasiassa jakson avulla, joka kuluu odottaen syöttö- / lähtöoperaatioiden päättymistä.

Tämä on päinvastainen tehtävä, joka on sidottu suorittimen kanssa. Tämä olosuhde syntyy, kun datan pyytämisnopeus on hitaampi kuin kuluva nopeus tai toisin sanoen enemmän aikaa käytetään tietojen pyytämiseen kuin niiden käsittelyyn.

Lähde
dua
Translate

IO-sidotut prosessit: viettää enemmän aikaa IO: n tekemiseen kuin laskelmiin, niillä on monia lyhyitä suorittimen purskeita. Suorittimeen sidotut prosessit: viettää enemmän aikaa laskelmien tekemiseen, muutama erittäin pitkä CPU-purske

Lähde
Translate

I / O-sidottu prosessi: - Jos suurin osa prosessin elinajasta käytetään i / o-tilassa, prosessi on ai / o-sidottu prosessi. Esimerkki: -laskuri, Internet Explorer

Suoritinprosessin sidottu prosessi: - Jos suurin osa prosessin elämästä vietetään prosessorissa, se on prosessoriin sidottu prosessi.

Lähde
Leave a Reply
You must be logged in to post a answer.