Moniytiminen prosessori on keskusyksikkö, joka sisältää kaksi tai useampia prosessointiytimiä yhdellä prosessorisirulla tai yhdessä paketissa .
Englannissa on kaksi yleisesti käytettyä termiä prosessoreille, joissa on useita ytimiä: moniytiminen ja moniytiminen .
Termiä multi -core ( englanniksi multi-core [1] ) käytetään yleensä keskusprosessoreissa, joissa on kaksi tai useampi yleiskäyttöinen ydin , mutta joskus sitä käytetään myös digitaalisissa signaaliprosessoreissa (DSP) ja yksisiruisissa järjestelmissä (SoC, SoC ). ). Moniytimisen prosessorin alla on ymmärrettävä, että useat ytimet on integroitu yhdeksi integroiduksi piiriksi (valmistettu samalle piisirulle). Jos useita puolijohdekiteitä yhdistettiin yhdeksi pakkaukseksi , mallia kutsutaan monisirumoduuliksi ( englanniksi multi-chip module , MCM).
Termi moniprosessori viittaa tietokoneisiin, joissa on useita fyysisesti erillisiä prosessoreita (esimerkiksi palvelimien emolevyissä on usein 2 tai 4 liitäntää useiden sirujen yhdistämistä varten), mutta niitä ohjaa yksi käyttöjärjestelmä (OS) -esiintymä.
Monen ytimen [1] käsitettä ( englanniksi many-core [2] tai englanniksi massively multi-core ) voidaan käyttää kuvaamaan moniytimisjärjestelmiä, joissa on suuri määrä ytimiä, kymmenistä satoihin tai enemmän. Esimerkiksi Intel käytti nimeä "multi-core" ("moniytiminen") Intelin MIC -laskimissa [3] .
Moniprosessori sirulla (single-chip multiprocessor, on-chip multiprocessor, chip multiprocessing, CMP) – näin varhaiset tutkijat kutsuivat hankkeitaan useiden prosessorien sijoittamisesta yhdelle alustalle [4] [5] [6] .
Moniytimisprosessorien arkkitehtuuri toistaa suurelta osin symmetristen moniprosessorien ( SMP-koneiden ) arkkitehtuuria, vain pienemmässä mittakaavassa ja omin ominaisuuksineen.
Ensimmäiset moniytimiset prosessorit ( ensimmäisen sukupolven CMP ) olivat yksinkertaisimpia: kaksi prosessoriydintä asetettiin samalle sirulle jakamatta muita resursseja kuin muistiväylä (esimerkiksi Sun UltraSPARC IV ja Intel Pentium D ). "Todellinen moniytiminen" ( toisen sukupolven CMP ) prosessori on, kun sen prosessointiytimet jakavat kolmannen tai toisen tason välimuistin: esimerkiksi Sun UltraSPARC IV+, Intel Core Duo ja kaikki nykyaikaiset moniytimisprosessorit.
Moniytimisissä prosessoreissa kellotaajuutta pienennetään yleensä tarkoituksella. Näin voit vähentää prosessorin virrankulutusta suorituskyvyn menettämättä: virrankulutus kasvaa kuutiona prosessorin taajuuden kasvusta. Kaksinkertaistamalla prosessoriytimien lukumäärä ja puolittamalla niiden kellonopeus, voit saada lähes saman suorituskyvyn, kun taas tällaisen prosessorin virrankulutus laskee 4 kertaa.
Joissakin prosessoreissa kunkin ytimen kellonopeus voi vaihdella sen yksilöllisen työmäärän mukaan. Ydin on täysimittainen mikroprosessori, joka käyttää kaikkia mikroprosessoriteknologian saavutuksia: liukuhihnat , epäjärjestyksessä oleva koodin suoritus, monitasoinen välimuisti , vektoriohjeiden tuki .
Ytimessä ei aina ole superskalariteettia , jos esimerkiksi prosessorin valmistaja pyrkii yksinkertaistamaan ydintä mahdollisimman paljon.
Jokainen ydin voi käyttää transienttia monisäiketekniikkaa tai superskalaarista SMT -tekniikkaa useiden säikeiden suorittamiseen samanaikaisesti , mikä luo illuusion useista "loogisista prosessoreista" jokaiseen ytimeen perustuen. Intel-prosessoreissa tätä tekniikkaa kutsutaan nimellä Hyper-threading , ja se kaksinkertaistaa loogisten prosessorien määrän fyysisiin prosessoreihin verrattuna. Sun UltraSPARC T2 (2007) -suorittimissa tämä lisäys voi olla jopa 8 säiettä ydintä kohti.
Moniytimiset prosessorit voidaan luokitella sen perusteella, että ne tukevat (jaettua) välimuistin koherenssia ytimien välillä. On prosessoreita, joilla on ja ei ole tällaista tukea. Viestintämenetelmä ytimien välillä:
Välimuisti: Kaikissa nykyisissä moniytimisissä prosessoreissa jokaisella ytimellä on tason 1 välimuisti erikseen, ja tason 2 välimuistille on useita vaihtoehtoja:
Moniytimisillä prosessoreilla on myös homogeeninen tai heterogeeninen arkkitehtuuri:
Monisäikeisiin sovelluksiin optimoidut kokemukset parantavat suorituskykyä moniytimisessä prosessorissa. Jos sovellusta ei kuitenkaan ole optimoitu, se ei hyödy paljoakaan ylimääräisistä ytimistä ja saattaa jopa toimia hitaammin kuin prosessorissa, jossa on vähemmän ytimiä mutta korkeampi kellonopeus . Nämä ovat enimmäkseen sovelluksia, jotka on kehitetty ennen moniytimisprosessorien tuloa, tai sovelluksia, jotka eivät periaatteessa käytä monisäikeistystä.
Useimmat käyttöjärjestelmät mahdollistavat useiden sovellusten ajamisen samanaikaisesti . Näin saavutetaan suorituskykyetu, vaikka sovellukset olisivat yksisäikeisiä.
Nykyään monet prosessorivalmistajat , erityisesti Intel , AMD , IBM , ARM , prosessoriytimien määrän lisääminen edelleen tunnustetaan yhdeksi suorituskyvyn lisäämisen painopistealueista.
Ensimmäinen prosessori, joka oli tarkoitettu tavanomaiseen käyttöön sulautettujen järjestelmien sijaan , oli POWER4 , jossa oli kaksi PowerPC -ydintä yhdellä sirulla ja jonka IBM julkaisi vuonna 2001.
2-ytiminen IBM PowerPC-970MP ( G5 ) esiteltiin vuonna 2005. Uusimmat Power Mac G5 :t varustettiin tällä prosessorilla .
SPARCMaaliskuussa 2004 Sun Microsystems esitteli SPARC-arkkitehtuurin ensimmäisen 2-ytimisen prosessorin: UltraSPARC IV : n, ensimmäisen sukupolven CMP:n. Toisen sukupolven CMP-prosessori oli UltraSPARC IV+ (vuoden 2005 puoliväli), jossa kahdella prosessoriytimellä oli tason 3 off-chip -välimuisti ja tason 2 on-chip-välimuisti.
Fujitsu esitteli 2- ytimisen SPARC64 VI -prosessorin SPARC64 - sarjassaan vasta vuonna 2007.
x86Huhtikuussa 2005 AMD julkaisi AMD64 - arkkitehtuurin 2- ytimisen Opteron - prosessorin palvelimille .
Toukokuussa 2005 Intel julkaisi x86-64 - arkkitehtuurisen Pentium D -prosessorin , ensimmäisen 2-ytimisen prosessorin, joka on suunniteltu henkilökohtaisiin tietokoneisiin. Tämä oli Intelin "nopea" vastaus AMD:n haasteeseen. Pohjimmiltaan Intelin johtavaan NetBurst -arkkitehtuuriin perustuva Pentium D koostui kahdesta erillisestä prosessorista, jotka oli sijoitettu samalle alustalle, ilman yhteisiä elementtejä. Koska Intel hylkäsi NetBurst-arkkitehtuurin vuoden 2005 lopussa, Pentium D:tä ei kehitetty. Intel julkaisi tammikuussa 2006 todellisen moniytimisen Core Duo -prosessorin , joka perustuu taloudellisempaan Core -arkkitehtuuriin.
Maaliskuussa 2010 ilmestyivät ensimmäiset 12-ytimiset sarjaprosessorit, joista tuli AMD:n Opteron 6100 -palvelinprosessorit ( x86 / x86-64 arkkitehtuuri ). [7]
Vuonna 2011 AMD hallitsi 8-ytimisen prosessorien tuotantoa kotitietokoneisiin [8] ja 16-ytimiseen prosessoreihin palvelinjärjestelmiin [9] .
Elokuussa 2011 AMD julkaisi ensimmäiset 16-ytimiset Opteron 6200 -sarjan palvelinprosessorit (koodinimeltään Interlagos ). Interlagos - prosessori yhdistää kaksi 8-ytimistä (4-moduulista) piiriä samassa paketissa ja on täysin yhteensopiva olemassa olevan AMD Opteron 6100 -sarjan ( Socket G34 ) -alustan kanssa. [kymmenen]
Vuodesta 2016 lähtien Intel on julkaissut prosessoreita Xeon E7 -palvelimille – ytimien lukumäärällä 4–24. [11] [12] (E5 – jopa 22 ydintä).
Helmikuussa 2020 AMD julkaisi ensimmäisen 64-ytimisen prosessorin kotitietokoneille AMD Ryzen Threadripper 3990X [13] .
Yhteenveto mikroprosessorien historiasta ja niiden parametreista esitetään päivitetyssä englanninkielisessä artikkelissa: Timeline of microprocessors , 2010s . Saadaksesi prosessoriytimien lukumäärän, kerro "Ydintä per die"- ja "Dies per module" -kentät; saadaksesi laitteistosäikeiden lukumäärän kerrotaan ytimien määrä luvulla "Threads per core". Esimerkiksi Xeon E7, Intel: "4, 6, 8, 10" ydintä per 1-säike per 1-2 laitteistosäiettä = enintään 10 ydintä ja 20 laitteistosäiettä, AMD FX "Bulldozer" Interlagos "4-8" per 2 per 1 = enintään 16 ydintä ja 16 säiettä.
Syyskuun 27. päivänä 2006 "IDF Fall" -kehittäjäfoorumissa Intel esitteli kokeellisen 80-ytimisen sirun, jonka suorituskyky on jopa 1 TFLOPS. Jokainen ydin toimi 3,16 GHz:n kellotaajuudella, sirun virrankulutus oli noin 100 W [14] .
20. elokuuta 2007 Tilera julkisti TILE64 - sirun64 prosessoriytimellä ja sisäänrakennetulla korkean suorituskyvyn verkon kautta, jonka kautta tiedonvaihto eri ytimien välillä voi tapahtua jopa 32 Tbps:n nopeudella. [15] [16]
Tilera julkisti 26. lokakuuta 2009 [ 17] 100- ytimisen TILE-Gx- sarjan yleisprosessorin . Jokainen prosessoriydin on erillinen prosessori, jossa on tason 1 ja tason 2 välimuistit . Ytimet, muisti ja järjestelmäväylä on yhdistetty mesh- verkkotopologian kautta . Prosessorit on valmistettu 40 nm:n prosessitekniikalla ja toimivat 1,5 GHz:n kellotaajuudella. 100-ytimiset prosessorit julkaistaan vuoden 2011 alussa.
2. joulukuuta 2009 Intel esitteli yksisiruisen " pilvi " Single-chip Cloud Computer (SCC) -tietokoneen, joka on 48-ytiminen siru. Prosessorin " pilvisyys " on se, että kaikki 48 ydintä kommunikoivat keskenään verkkosolmuina. SCC on osa projektia, jonka tavoitteena on luoda 100-ytiminen prosessori [18] .
Kesäkuussa 2011 Intel paljasti yksityiskohdat kehitettävistä Many Integrated Core (MIC) -arkkitehtuurista - tämä tekniikka kasvoi Larrabee -projektista . Tähän arkkitehtuuriin perustuvat mikroprosessorit saavat yli 50 x 86 mikroydintä ja ne valmistetaan vuonna 2012 22 nm:n prosessitekniikalla. Näitä mikroprosessoreita ei voida käyttää keskusyksikköinä , mutta laskentakiihdyttimiä rakennetaan useista tämän arkkitehtuurin siruista erillisen laajennuskortin muodossa ja ne kilpailevat GPGPU- ja korkean suorituskyvyn tietojenkäsittelyn markkinoilla Nvidia Teslan ja AMD FireStreamin kaltaisilla ratkaisuilla. . [19] Vuonna 2012 julkaistun arkkitehtuurikuvauksen mukaan jopa 60 ytimen sirut ovat mahdollisia.
Lokakuussa 2011 , Adaptevaesitteli 64-ytimiset Epiphany IV -mikroprosessorit , jotka osoittavat suorituskykyä jopa 70 gigaflopsiin (SP) ja kuluttavat alle 1 watin sähköä. Mikroprosessorit on suunniteltu RISC - arkkitehtuurilla ja koenäytteet suunniteltiin vuonna 2012 valmistavan GlobalFoundriesin 28nm prosessiteknologiaa käyttäen. Näitä prosessoreita ei voi käyttää keskusyksikkönä , vaan Adaptevaehdottaa niiden käyttöä apuprosessorina monimutkaisiin tehtäviin, kuten kasvojentunnistukseen tai käyttäjän eleisiin. Adapteva väittää, että tämän mikroprosessorin ytimien lukumäärää voidaan jatkossa kasvattaa 4096. Pääversion (700 MHz) 4096-ytimisen prosessorin on arvioitu saavuttavan 5,6 TFLOPS, kuluttaen vain 80 wattia.
Tammikuussa 2012 ZiiLabs _( Creative Technologyn tytäryhtiö ) julkisti 100-ytimen ZMS-40- siruun perustuvan järjestelmän . Tämä järjestelmä yhdistää 4-ytimisen ARM Cortex-A9 1,5 GHz -prosessorin (Neon-multimedialohkoilla) ja joukon 96 yksinkertaisempaa ja vähemmän monipuolista StemCell- laskentaydintä . StemCell-ytimet ovat tehotehokasta SIMD -arkkitehtuuria, jossa on 50 gigaflopin huippuliukuluku (32 bittiä) suorituskykyä , jotka toimivat enemmän kuin GPU muissa sirulla olevissa järjestelmissä, ja niitä voidaan käyttää videon, kuvan ja äänen käsittelyyn sekä 3D -kiihdytykseen. - ja 2D-grafiikka ja muut multimediatehtävät ( OpenGL ES 2.0:n ja OpenCL 1.1 :n tukemat ) [22] .
Elokuussa 2019 Cerebras Systems esitteli maailman suurimman moniytimisen superprosessorin, Cerebras Wafer Scale Enginen ; siinä on yli 1,2 biljoonaa transistoria 400 000 ytimessä ja se vie lähes koko halkaisijaltaan 300 mm:n puolijohdekiekon alueen. [23] . Vuonna 2020 he loivat myös tietojenkäsittelyn historian suurimman prosessorin; testeissä se päihitti supertietokoneen 100 parhaan maailmanlistan joukossa [24] .
Suuntaus on myös ottaa käyttöön moniytimiä mikrokontrollereita mobiililaitteisiin .
Esimerkiksi:
prosessoritekniikat | Digitaaliset|||||||||
---|---|---|---|---|---|---|---|---|---|
Arkkitehtuuri | |||||||||
Ohjesarjan arkkitehtuuri | |||||||||
koneen sana |
| ||||||||
Rinnakkaisuus |
| ||||||||
Toteutukset | |||||||||
Komponentit | |||||||||
Virranhallinta |