Mājas lapa » » Kāpēc CPU kodoliem ir vienāds ātrums, nevis dažādi?

    Kāpēc CPU kodoliem ir vienāds ātrums, nevis dažādi?

    Ja jūs kādreiz esat veikuši daudz jaunu iepirkumu jaunam CPU, iespējams, esat pamanījuši, ka visiem kodoliem ir ātrums, nevis dažādu kombināciju kombinācija. Kāpēc ir tā, ka? Šodienas SuperUser Q&A ziņojumam ir atbilde uz ziņkārīga lasītāja jautājumu.

    Šodienas jautājumu un atbilžu sesija mums dod pieklājību no SuperUser-Stack Exchange apakšnodaļas, kas ir kopienas orientēta Q & A tīmekļa vietņu grupa.

    Jautājums

    SuperUser lasītājs Jamie vēlas uzzināt, kāpēc CPU kodoliem ir vienāds ātrums, nevis dažādi:

    Kopumā, ja pērkat jaunu datoru, jūs nosakāt, kuru procesoru iegādāties, pamatojoties uz paredzamo datora slodzi. Videospēļu veiktspēju mēdz noteikt ar viena kodola ātrumu, bet lietojumprogrammas, piemēram, video rediģēšanu, nosaka kodolu skaits. Runājot par to, kas ir pieejams tirgū, visiem CPU ir apmēram tāds pats ātrums, jo galvenās atšķirības ir vairāk pavedienu vai vairāk kodolu.

    Piemēram:

    • Intel Core i5-7600K, bāzes frekvence 3,80 GHz, 4 serdeņi, 4 vītnes
    • Intel Core i7-7700K, bāzes frekvence - 4.20 GHz, 4 kodoli, 8 vītnes
    • AMD Ryzen 5 1600X, bāzes frekvence 3,60 GHz, 6 serdeņi, 12 vītnes
    • AMD Ryzen 7 1800X, bāzes frekvence 3,60 GHz, 8 serdeņi, 16 vītnes

    Kāpēc mēs redzam šo augošo serdeņu modeli, tomēr visiem kodoliem ir tāds pats pulksteņa ātrums? Kāpēc nav variantu ar atšķirīgu pulksteņa ātrumu? Piemēram, divi “lieli” serdi un daudz mazu serdeņu.

    Tā vietā, piemēram, četri serdi ar 4,0 GHz (ti, 4 × 4 GHz, 16 GHz maksimums), kā par CPU ar diviem kodoliem, kas darbojas ar 4,0 GHz, un četrām kodolām, kas darbojas ar 2,0 GHz (ti, 2 × 4,0 GHz + 4 × 2,0 GHz, maksimālais 16 GHz)? Vai otrā iespēja būtu vienlīdz laba vienai vītņotai darba slodzei, bet, iespējams, labāk par vairāku vītņu slodzi?

    Es to jautāju kā vispārēju jautājumu, nevis konkrēti attiecībā uz iepriekš uzskaitītajiem CPU vai kādu konkrētu darba slodzi. Es esmu tikai ziņkārīgs par to, kāpēc šis modelis ir tas, kas tas ir.

    Kāpēc CPU kodoliem ir vienāds ātrums, nevis dažādi?

    Atbilde

    SuperUser ieguldītājam bwDraco ir atbilde uz mums:

    To sauc par heterogēnu apstrādi (HMP), un to plaši izmanto mobilās ierīces. Ar ARM balstītās ierīcēs, kas ievieš lielu.LITTLE, procesors satur serdeņus ar dažādiem veiktspējas un jaudas profiliem, ti, daži serdi darbojas ātri, bet piesaista daudz enerģijas (ātrāka arhitektūra un / vai augstāki pulksteņi), bet citi ir energoefektīvi, bet lēni ( lēnāka arhitektūra un / vai zemāki pulksteņi). Tas ir noderīgi, jo enerģijas patēriņš parasti palielinās neproporcionāli, palielinot veiktspēju pēc tam, kad esat beidzis noteiktu punktu. Ideja šeit ir iegūt veiktspēju, kad tas ir nepieciešams, un akumulatora darbības laiku, kad to nedara.

    Darbvirsmas platformās enerģijas patēriņš ir daudz mazāks, tāpēc tas nav īsti nepieciešams. Lielākā daļa lietojumprogrammu sagaida, ka katram kodam ir līdzīgi veiktspējas raksturlielumi, un HMP sistēmu plānošanas procesi ir daudz sarežģītāki nekā plānošana tradicionālajām simetriskām daudzapstrādes (SMP) sistēmām (tehniski, Windows 10 atbalsta HMP, bet tas galvenokārt ir paredzēts mobilajām ierīcēm). ierīces, kas izmanto ARM big.LITTLE).

    Arī lielākā daļa darbvirsmas un klēpjdatoru procesoru šodien nav termiski vai elektriski ierobežoti līdz vietai, kur dažiem serdeņiem ir nepieciešams darboties ātrāk nekā citi, pat īsiem pārrāvumiem. Mēs būtībā esam nonākuši pie sienas par to, cik ātri mēs varam izgatavot atsevišķus serdeņus, tāpēc dažu serdeņu aizstāšana ar lēnākiem neļaus atlikušajiem serdeņiem darboties ātrāk.

    Lai gan ir daži galddatoru procesori, kuriem ir viens vai divi serdi, kas spēj darboties ātrāk nekā citi, šī iespēja pašlaik ir ierobežota ar dažiem ļoti augstas klases Intel procesoriem (pazīstams kā Turbo Boost Max 3.0) un ietver tikai nelielu pieaugumu veiktspēju tiem kodoliem, kas var darboties ātrāk.

    Lai gan, protams, ir iespējams izveidot tradicionālu x86 procesoru ar lieliem, ātriem kodoliem un mazākiem, lēnākiem kodoliem, lai optimizētu smago vītņu slodzi, tas radītu ievērojamu sarežģītību procesora dizainam, un, visticamāk, lietojumprogrammas to pareizi atbalstīs.

    Veikt hipotētisku procesoru ar diviem ātriem Kaby ezera (7. paaudzes) serdeņiem un astoņiem lēni Goldmont (Atom) serdeņiem. Jums kopumā būtu 10 serdeņi, un šādam procesoram optimizētā slodze ar lielu vītni, iespējams, palielinās veiktspēju un efektivitāti salīdzinājumā ar parasto četrkodolu Kabī ezera procesoru. Tomēr dažāda veida kodoliem ir ļoti atšķirīgi veiktspējas līmeņi, un lēni serdeņi pat neatbalsta dažus norādījumus par ātru kodolu atbalstu, piemēram, AVX (ARM novērš šo problēmu, pieprasot gan lielajiem, gan mazajiem serdeņiem atbalstīt tos pašus norādījumus). ).

    Atkal, lielākā daļa Windows balstītu vairāku vītņu lietojumprogrammu pieņem, ka katram kodam ir tāds pats vai gandrīz tāds pats darbības līmenis, un tā var izpildīt tās pašas instrukcijas, tāpēc šāda veida asimetrija, visticamāk, radīs mazāk nekā ideālu veiktspēju, iespējams, pat avārijas, ja tā izmanto instrukcijas, ko nesniedz lēnāki serdi. Lai gan Intel varētu modificēt lēno kodolu, lai pievienotu papildu norādījumus, lai visi kodoli varētu izpildīt visus norādījumus, tas neatrisinātu problēmas ar programmatūras atbalstu heterogēniem procesoriem..

    Atšķirīga pieeja lietojumprogrammu dizainam, tuvāk tam, ko jūs, iespējams, domājat savā jautājumā, varētu izmantot GPU, lai paātrinātu lietojumprogrammu ļoti paralēlās daļas. To var izdarīt, izmantojot API, piemēram, OpenCL un CUDA. Kas attiecas uz vienu mikroshēmu risinājumu, AMD veicina aparatūras atbalstu GPU paātrinājumam savos APU, kas apvieno tradicionālo CPU un augstas veiktspējas integrētu GPU vienā mikroshēmā, kā heterogēnā sistēmas arhitektūra, lai gan tas nav saskatījis lielu nozaru uzņemšanu ārpus tās no dažiem specializētiem lietojumiem.


    Vai kaut kas jāpievieno paskaidrojumam? Skaņas izslēgšana komentāros. Vai vēlaties lasīt vairāk atbildes no citiem tehnoloģiju gudriem Stack Exchange lietotājiem? Apskatiet pilnu diskusiju pavedienu šeit.

    Attēla kredīts: Mirko Waltermann (Flickr)