Te hoahoanga moroiti me ōna whakamahinga

Te Hoahoa Moroiti me ōna Whakamahinga

Ko te hoahoanga moroiti ko ngā "roto" o te tukatuka: te āhua o te hanganga me te mahi a roto o te CPU ki te whakahaere i ngā tohutohu kua tautuhia e te Hoahoa Huinga Tohutohu (ISA) pēnei i te x86, ARM, RISC-V rānei. Mēnā ka taea te whakarite i te ISA ki ngā ture o te reo—he kohinga kupu me ō rātou wetereo—ko te hoahoanga moroiti te āhua o te hanganga a te roro i ngā tukanga whakaaro kia taea ai te mārama me te kōrero i aua rerenga kōrero i te tere, i te whai hua o te pūngao, me te pumau. He maha ngā tāngata e mōhio ana ki ngā ingoa tukatuka mā te waitohu, mā te raupapa rānei, engari ko ngā rerekētanga tūturu o te mahi me te whai huatanga ka whakatauhia e ngā whakataunga i te taumata hoahoanga moroiti.

Te mārama ki te whanaungatanga i waenga i te ISA me te hoahoanga moroiti

Ka taea e te ISA kotahi te whai i ngā whakatinanatanga hoahoanga moroiti maha. Hei tauira, e rua ngā tukatuka e tautoko ana i tētahi ISA motuhake, engari he rerekē ō rāua hoahoa ā-roto: ko tētahi e pai ana ki te tere karaka teitei, ko tētahi e pai ana ki te maha o ngā matua, ki te whai huatanga rānei o te mana. Mā tēnei ka whakamārama he aha ngā CPU e rua e whakahaere ana i ngā tohutohu "taurite" kāore e mahi i te taurite i ngā wā katoa.

Ko te hoahoanga moroiti e kapi ana i ngā āhuatanga pēnei i ngā paipa, te whakatinanatanga o waho o te raupapa, te matapae peka, ngā whakarōpūtanga keteroki, ngā waeine whakatinanatanga (ALU/FPU), me ngā tikanga whakahaere hiko. E whai wāhi ana ia o ēnei wāhanga ki ngā whāinga whānui e toru: te mahi, te whai huatanga o te pūngao, me te utu/uaua.

Ngā wāhanga matua o te hoahoanga moroiti

1. Paipa: raina huihuinga o ngā tohutohu
Ka wehea e te pipeline te whakahaerenga o ngā tohutohu ki ētahi wāhanga, pērā i te tiki (te tiki tohutohu), te wetewete (te whakamāori), te whakahaere (te whakahaere), te urunga mahara (te urunga mahara), me te tuhi-whakahoki (te tuhi hua). Mā te pipeline, ka taea e te CPU te tukatuka i ngā tohutohu maha i roto i te puranga, he rite tonu ki te raina huihuinga wheketere.

Ko te hohonu ake o te paipa, ko te teitei ake ka taea e te CPU te toro atu. Heoi, ko te paipa e hohonu rawa ana ka whakanui ake i te whiu mō ngā matapae hē o te peka, ā, ka whakanui ake i te uaua o te whakahaere.

2. Te Whakarara Taumata-Tohu me te Whakarara Taumata-Tohutohu
He tino kaha te whakamahi a ngā CPU hou i ngā tohutohu maha, arā, ka taea e rātou te whakahaere i ngā tohutohu neke atu i te kotahi mō ia huringa me ngā waeine whakahaere whakarara maha. Ka whakamahia tēnei e te whakarara taumata-tohutohu (ILP), te kaha ki te whakahaere i ngā tohutohu maha, motuhake.

Heoi, kāore i te wātea tonu te ILP. Mena he maha ngā whakawhirinakitanga raraunga o tētahi kaupapa, he maha rānei ngā peka, kāore tēnei āheinga whakarara e tino whakamahia. Nō reira, ka whakawhirinaki hoki ngā hoahoanga moroiti ki ētahi atu tikanga hei "whakakī" i ngā waeine whakahaere kia kore ai e noho mangere.

PATANGA  Whare minimalist i roto i te hoahoa whare

3. Te whakatinanatanga o waho o te raupapa (OoO)
Mā te whakahaerenga kore-raupapa ka taea e te PTM te whakahaere i ngā tohutohu i waho i te raupapa, mena he tika te hua whakamutunga. Hei tauira, mena kei te tatari tetahi tohutohu mō ngā raraunga mai i te mahara, ka taea e te PTM te whakahaere i tētahi atu tohutohu kua rite. Hei mahi i tēnei, ka whakamahia e te PTM ngā wāhanga pēnei i te whakarite anō i ngā arai, ngā teihana rahui, me te whakaingoa anō i te rēhita.

Ka whakapai ake te OoO i te mahi, engari me nui ake te horahanga me te mana o te silicon, ā, ka whakapiki ake i te uaua o te manatoko. I runga i ētahi taputapu iti-mana, ka taea e ngā kaihoahoa te whiriwhiri i tētahi whakahaere raupapa māmā ake.

4. Te matapae peka me te whakatinanatanga whakapae
Mā ngā tohutohu peka (if/else, loop) ka akiaki te PTM ki te whiriwhiri i tētahi ara whakatinanatanga. Mā te tatari mō tētahi whakatau peka ka "whati" i te paipa. Ka ngana te matapae peka ki te matapae ko tēhea ara ka tangohia, ka taea ai e te PTM te haere tonu me te kore e mutu.

Mena he tika te matapae, ka tino pai ake te mahi. Mena he hē, me maka e te PTM te hua whakapae (whakamahia) ka tīmata anō, ka puta he whiu huringa. Ko te matapae peka matatau he kaiārahi mahi matua mō ngā kawenga mahi noa, engari kua honoa hoki ki ngā take haumarutanga pēnei i a Spectre, e whakamahi ana i ngā pānga taha whakapae.

5. Te aroākapa Keteroki: L1, L2, L3
He nui ake te tere o te CPU i te mahara matua (RAM). He mahara iti ake, he tere ake te mahara keteroki e whakamahia ana hei penapena raraunga e uru pinepine ana. He maha ngā taumata: L1 (te tere me te iti rawa), L2 (nui ake), me te L3 (nui ake, e tohaina ana i waenga i ngā matua).

He mea nui te hoahoa keteroki: ka whakaitihia ngā hapa e ngā keteroki nui ake, engari he nui ake te utu, ā, ka puhoi ake pea. He mea nui anō hoki ngā kaupapa here tiki-mua me te taunga o te keteroki i runga i ngā pūnaha maha-matua ki te hoahoanga moroiti.

6. Ngā waeine whakahaere: tauoti, pūwāhi mānu, SIMD, me te motuhake
He maha ngā waeine o te PTM: ALU mō ngā mahi tauoti, FPU mō ngā tau hautanga, ngā waeine uta/penapena mō te mahara, me te SIMD (hei tauira, AVX/NEON) mō te tukatuka i ngā raraunga nui i te wā kotahi—he tino whai hua mō te rongorau maha, te kōpeketanga, tae noa ki te ako mīhini māmā.

Hei tāpiritanga, he maha ngā wā ka whakaurua e ngā tukatuka hou ngā whakatere motuhake (i runga i te tūāpapa), pērā i te whakamunatanga, te rorohiko AI, te tukatuka tohu whakaahua rānei i runga i ngā taputapu pūkoro. Ahakoa kāore i te kiia he "hanganga moroiti CPU parakore", ka awe tēnei whakaurunga i te hoahoa whānui o te pūnaha-i runga i te maramara.

PATANGA  Te hiranga o te oro i roto i te hoahoanga

7. Te whakahaere hiko me te hoahoa wera
Mā te hoahoanga moroiti anō hoki e whakatau te āhua o te whakarerekētanga a te tukatuka i te ngaohiko me te auau (DVFS), te whakaweto i ngā wāhanga kāore e whakamahia (te kati karaka, te kati hiko), me te pupuri i te pāmahana i roto i ngā rohe. I roto i ngā pona me ngā waea pūkoro, he mea nui ake te pai o te mahi ia watt i te mahi tino pai.

Ngā whakamahinga o te microarchitecture i te ao tūturu

1. Whakarei ake i te mahi a te rorohiko me te tūmau
Ko ngā whakamahinga tino kitea ko te whakapai ake i te mahi a ngā tono o ia rā (ngā pūtirotiro, ngā tono tari), te rorohiko hangarau (ngā whakatauira), me ngā ratonga tūmau (ngā pātengi raraunga, ngā ratonga tukutuku). Mā ngā tikanga pēnei i te OoO, te keteroki matatau, me te matapae peka ka tere ake te oma o ngā papatono me te kore e nui ake te whakanui i te auau.

I roto i tētahi pokapū raraunga, ka taea e ngā panonitanga iti o te whai huatanga o te hoahoanga moroiti te whakaputa i te hiko me te penapena whakamatao nui. Koia te take e aro nui ai te hoahoa hoahoanga moroiti tūmau ki te putanga raraunga, te whānui o te mahara, me ngā āheinga maha-miro.

2. Whakapai ake i te whai huatanga o te pūngao i runga i ngā taputapu pūkoro
Me whai mahi teitei ngā waea atamai mō ngā kāmera, ngā kēmu, me te AI, me te penapena hoki i te roa o te pākahiko. Nō reira, he maha ngā wā ka whakakotahihia e ngā hoahoanga pūkoro ngā matua penapena-hiko me ngā matua mahi (te huarahi big.LITTLE, ngā momo rerekē rānei). Mā tēnei ka taea te whakanoho i ngā mahi māmā ki ngā matua iti, me ngā mahi taumaha ki ngā matua nui, ka hua ake he pai ake te whakamahinga o te pūngao me te kore e whakaiti i te aro.

3. Whakatauhia te whanonga haumarutanga me te whakaiti i te pānga
Ehara i te mea ko te tere anake te kaupapa o te hoahoanga moroiti; engari he pānga anō hoki ki te haumarutanga. Ka taea e ngā tikanga whakapae, ngā keteroki, me te matapae peka te whakauru i ngā hongere taha. Kātahi ka whakawhanakehia e te umanga ngā whakaiti i ngā taumata pūmanawa me ngā taumata taputapu, pērā i ngā huringa ki ngā matapae, te wehenga whakapae, ngā tikanga wehewehe keteroki rānei. Mā te mārama ki te hoahoanga moroiti ka āwhina i ngā kaihanga haumarutanga ki te aromatawai i ngā mōrearea me te whiriwhiri i ngā whirihoranga whakaiti tika.

4. Āwhina i ngā kaiwhakawhanake ki te arotau i te pūmanawa
Ahakoa kāore ngā kaiwhakawhanake e hoahoa i ngā CPU, ka taea e rātou te tuhi waehere tere ake mā te mārama ki ngā whanonga hoahoanga moroiti. Hei tauira:
– Whakaitihia te ngaronga o te keteroki mā te whakamahi i ngā hanganga raraunga e pai ake ana mō te keteroki.
– Āta karohia ngā manga kāore e hiahiatia, kia māmā ake rānei te matapae i ngā tauira o ngā manga.
– E whakamahi ana i te SIMD mō ngā mahi whārite.
– Ka whakaiti i te tautohetohe i runga i ngā miro maha e whakaoho ana i te rere o te keteroki.

PATANGA  Te hoahoanga me tōna pānga ki te hauora hinengaro

I roto i te ao rorohiko mahi teitei (HPC), he mea tino nui tēnei mōhiotanga nā te mea he maha ngā wā ka whakawhāitihia te mahi e te whānui o te mahara, ehara i te maha o ngā tohutohu anake.

5. Hei pūtake mō ngā hoahoa taputapu hou
I roto i te ao mātauranga me te umanga haurua-ira, he tūāpapa te hoahoanga moroiti mō te auahatanga: te whakanui ake i te whānui o te whakatinanatanga, te whakarerekē i ngā kaupapa here keteroki, te whakapai ake i ngā matapae peka, tae noa ki te hoahoa i ngā huarahi kanorau (CPU + whakateretere). E kitea ana tōna whai huatanga i roto i te whakataetae hua: ka taea e te whakatupuranga kotahi o ngā hoahoa hou te kawe mai i ngā whakapainga nui ki te IPC (ngā tohutohu mō ia huringa) me te whai huatanga, ahakoa kāore anō kia rerekē te auau.

Ngā wero me ngā ahunga whanaketanga

Kei te aro atu ngā hoahoanga moroiti o ēnei rā ki ngā rohe o te ahupūngao: te turuturu hiko, te whakaputa wera, me te uaua haere. Nā te mea kāore i te ngāwari te whakanui ake i ngā auautanga pērā i mua, kua nekehia te arotahi ki:
– Te whakarara teitei ake (maha-matua, SMT).
– Ngā whakatere motuhake mō ngā mahi motuhake.
– Te arotau i te hierarki mahara me te hononga.
– Ko te whai huatanga o te pūngao hei inenga matua.
– Te haumarutanga hoahoa-iti mai i te tīmatanga o te hoahoa (haumarutanga mā te hoahoa).

I ngā tau tata nei, kua piki haere te mana o te huarahi kanorau—te whakakotahi i ngā CPU whānui me te AI motuhake, ngā whakairoiro, me ngā waeine pāpāho—inā koa i roto i ngā SoC.

Whakamutunga

Ko te hoahoanga moroiti te pūtake e whakatau ana i te tere o te whakahaere a te tukatuka i ngā tohutohu: te tere, te whai hua o te hiko, me te haumaru. Ko ngā paipa, te whakahaerenga kore-raupapa, te matapae peka, ngā keteroki, ngā wae whakahaere, me te whakahaere hiko he wāhanga nui katoa e awe ana tetahi ki tetahi. Ko ōna whakamahinga kei roto i te whakapai ake i te mahi a te rorohiko me te tūmau me te tiaki i te ora o te pākahiko i runga i ngā taputapu pūkoro ki te āwhina i te arotau i te pūmanawa me te whakapakari i te haumarutanga pūnaha. Ko te mārama ki te hoahoanga moroiti ko te mārama ki ngā take kei muri i ngā rerekētanga mahi i waenga i ngā tukatuka, me te whakaatu hoki i ngā māramatanga ki te whanaketanga tonu o te hangarau rorohiko.

Ki te hiahia koe, ka taea e au te whakarerekē i tēnei tuhinga ki tētahi horopaki motuhake (hei tauira, mō ngā mahi kura/kāreti, mō tētahi tuhinga whānui, mō tētahi putanga hangarau ake rānei me ngā tūtohi rere me ngā tauira take arotau).

Waiho he kōrero