Rakenteelliset piirteet
rinnakkainen tietokonejärjestelmä
Rinnakkainkäsittelytietokone
Rinnakkainkäsittelytietokone mainly refers to the following two types of computers: ①Can simultaneously A single central processor computer that executes multiple instructions or processes multiple data items at the same time; ②Multi-processor system.
Rinnakkaisprosessointitietokoneiden rakenteelliset ominaisuudet
Elektronisten laitteiden kehittymisen myötä tietokoneiden prosessointitehoa on parantunut merkittävästi.Vain laitteiden edistymisen saavuttama nopeuden nousu ei kuitenkaan ole kaukana nykyaikaisen tieteen, tekniikan, tekniikan ja monien muiden nopeiden laskentaominaisuuksien tarpeiden tarpeista.Tämä vaatii ihmisiä parantamaan tietokoneen rakennetta ja omaksumaan erilaisia rinnakkaisprosessointitekniikoita, jotta prosessinopeutta ja ongelmanratkaisukykyä voidaan lisätä huomattavasti.
Rinnakkaisprosessointitietokoneiden rakenteelliset ominaisuudet ilmenevät pääasiassa kahdessa näkökulmassa: ①A -monimuotoisia rinnakkaisia mittauksia käytetään laajasti yhdessä prosessorissa;② Yhden prosessorin kehittäminen moniprosessorijärjestelmään, jolla on erilaiset kytkentäasteet.Rinnakkaisprosessoinnin päätarkoitus on parantaa järjestelmän käsittelykapasiteettia.Jotkut rinnakkaisprosessointitietokonejärjestelmät (kuten moniprosessorijärjestelmät) voivat myös parantaa järjestelmän luotettavuutta.Laitteiden kehityksen vuoksi rinnakkaiset tietokonejärjestelmät ovat parempi suorituskyky-ja hinta-suhde, ja parannus on kehityssuuntainen.
Rakenteen periaate
Rinnakkaisprosessointitietokoneen rakenne sisältää pääasiassa putkilinjan, monitoiminnan komponenttitilan, taulukkotila, moniprosessoritila ja tiedonsiirtotila.
Putkilinjan prosessori
Ohjeiden suorittamisprosessi on jaoteltu useisiin osiin, ja jokainen osa suorittaa osan prosessoinnista.Ohje virtaa kaikki segmentit järjestyksessä ja tulos saadaan suorituksen valmistumisen jälkeen.Kun tämä ohje on käsitelty tässä kappaleessa ja siirtyy seuraavaan kappaleeseen, seuraava ohje voi virrata tähän kappaleeseen.Siksi useita ohjeita voidaan käsitellä samanaikaisesti koko putkilinjalla.Jos kunkin segmentin suorittamisaika on yksi kellotaulu, normaaleissa olosuhteissa yksi tulos voidaan tulostaa lyöntiä kohti, ts..Tämä voi nopeuttaa prosessoria.
Vierekkäisten ohjeiden korrelaatio ohjelmassa vaikuttaa putkilinjan prosessorin tehokkuuteen.Esimerkiksi ehdollinen haara -ohje ei joskus pysty määrittämään seuraajan ohjeita ennen viimeisen käskyn suorittamista;Ja jos tämän ohjeen on käytettävä edellisen ohjeen tulosta operandina, se keskeyttää putkilinjan ja vähentää tehokkuutta.
Monitoimiset komponentit
Prosessorilla on useita funktionaalisia komponentteja.Jokainen toiminnallinen yksikkö voi käsitellä tietoja rinnakkain, joten prosessori voi käyttää erilaisia funktionaalisia yksiköitä suorittaakseen useita ohjeita rinnakkain prosessointinopeuden lisäämiseksi.Jos joillakin tietokoneilla on liukulukujen lisäys, kiinteän pisteen lisäys, liukulukujen kertolasku, liukulukujen jako, loogiset toiminnot, siirtyminen ja muut funktionaaliset komponentit erilaisten tietojen käsittelemiseksi.Jotkut putkilinjan vektorikoneet sisältävät myös useita funktionaalisia komponentteja.Ohjelman toteuttamisen aikana eri komponenttien epätasapainoisen kysynnän vuoksi kaikkien toiminnallisten komponenttien on mahdotonta olla kiireisessä tilassa.Ohjeiden välinen korrelaatio vaikuttaa myös koneen tehokkuuteen.Esimerkiksi tämän ohjeen edellyttämät toiminnalliset komponentit suorittavat edelleen muita ohjeita;ja tämän käskyn edellyttämät operandit ovat tuloksia, joita ei ole vielä suoritettu.
Matriisprosessori
Prosessori koostuu useista identtistä prosessointikomponenteista ja yhtenäisestä ohjaimesta.Tämä ohjain tulkitsee ohjeita ja lähettää käyttökomennot kaikille prosessointikomponenteille.Jokainen prosessointikomponentti suorittaa täsmälleen saman toiminnan samanaikaisesti ohjaimen komennon mukaan.Taulukkoprosessorit voidaan jakaa liukulukiotarray-prosessoriin ja bitteroimaryhmäprosessoreille.
ILLIAC-IV-kone on kelluvan pisteen taulukkoprosessori, mukaan lukien 64 identtistä prosessointiyksikköä (PU) ja yhteinen ohjausyksikkö (Cu).Jokainen prosessointiyksikkö sisältää prosessointiyksikön (PE), joka pystyy suorittamaan 64-bittiset kelluvuuspisteet ja muistin (PM), jonka kapasiteetti on 2K sanan.64 prosessointiyksikköä on järjestetty 8 × 8 -taulukkoon.Jokaisella prosessointiyksiköllä on suora tietopolku naapurimaiden prosessointiyksiköiden kanssa.
Moniprosessorijärjestelmä
Moniprosessorijärjestelmä voi parantaa järjestelmän suorituskykyä ja luotettavuutta.Se on moni-ohjeiden stream-monitietovirtaprosessori.Järjestelmän kunkin prosessorin kytkentäasteen mukaan moniprosessorijärjestelmä voidaan jakaa kahteen luokkaan.① Epäsuorasti kytketty moniprosessori: Järjestelmän jokaisella prosessorilla on pääsuke.Jokaista prosessoria hallinnoi oma käyttöjärjestelmä, ja he kommunikoivat jaetun syöttö- ja lähtöjärjestelmän kautta.② Suoraan kytketty moniprosessorijärjestelmä: Järjestelmän jokainen prosessori jakaa päämuistin, ja sitä hallinnoi yhtenäinen käyttöjärjestelmä.Moniprosessorijärjestelmät viittaavat yleensä tähän suoran kytkentäluokkaan.
Yhteenliiteverkko
Suoraan kytketyssä moniprosessorijärjestelmässä on erittäin tärkeää toteuttaa prosessorin ja muistin välinen yhteenliiteverkko sekä prosessorin ja prosessorin välillä.Yhdistämisverkkojen päämuotoa on kolme päämuotoa.
① Väylärakenne: Väylärakenne on yksinkertaisin verkkorakenne moniprosessorijärjestelmässä.Todellisen moniprosessorijärjestelmän yhdistämisverkko kehitetään usein väylän rakenteen perusteella (kuva 3).
② Ristikytkimen rakenne: Ristikytkin koostuu poikkipalkkikytkimen ryhmästä, joka yhdistää vaakaprosessorin ja pystysuuntaisen muistimoduulin (kuva 4).
③ Monikarjan muistirakenne: Siirrä kytkimet jokaiselle poikkikytkimen rakenteen poikkipisteelle vastaavan muistin rajapinnalle monisorisen muistin rakenteen muodostamiseksi.
Tietovirtaprosessori
Data Stream -prosessori on erittäin rinnakkainen prosessori, jota ihmiset arvostavat.Vaikka pääperiaate säilyttää ohjelmien tallentamiskäytäntö.Se ei suorita ohjelmaa ohjelman laskurin ilmoittamien ohjeiden järjestyksessä.Niin kauan kuin kaikki vaadittavat operandit ovat saatavilla, ohjeet voidaan suorittaa, ts. Ohjelman suorittamista ei johda ohjausvirta, vaan tiedonsiirto.
Data Stream -prosessori on kielipohjainen prosessori.Se käyttää tietovirtaohjelmakaaviota käyttöliittymänä käyttäjän kielen ja tietokoneen rakenteen välillä.Tietovirtaohjelmakaaviota edustaa aktiivinen laatikko.Jokaisessa aktiivisessa kehyksessä on useita kenttiä, jotka tallentavat vastaavasti toimintakoodin, operandin ja kohteen osoitteen.Tietovirtaohjelma on tallennettu aktiiviseen muistiin aktiivisten kehysten kokoelman muodossa.Kun käsky voidaan suorittaa, vastaava aktiivinen kehysosoite lähetetään käskyjonoon.Lukemakomponentti hakee aktiivisen kehyksen muistia osoitteen mukaisesti toimintapaketin muodostamiseksi, joka lähetetään operaatiokomponentille prosessointia varten, ja tulospaketti luodaan.Muokkauskomponentti lähettää tulostiedot määritettyyn aktiiviseen kehykseen operandina tulososoitteen kohdeosoitteen mukaisesti ja lähettää ohjeen osoitteen operandilla käsky jonoon.Ohjeiden jonotuslaitteen ohjeissa on suoritusolosuhteet, joten on vain lisättävä komponenttien lukumäärää tai parannettava komponenttiputken astetta, se voidaan suorittaa rinnakkain suurella nopeudella.Lisäksi useita ohjeiden käsittelyyksiköitä voidaan kytkeä myös datavirran moniprosessorijärjestelmään käsittelyominaisuuksien parantamiseksi.
Rinnakkaiset algoritmit ja rinnakkaiset kielet
Yksi avaimista rinnakkaisen prosessoinnin tehokkuuden parantamiseksi on rinnakkaiset algoritmit.Algoritmin on mukauduttava tietokoneen rakenteeseen.Jos algoritmin ilmaisema rinnakkaisuus on periaatteessa sama kuin tietokoneen rinnakkaisuus, tietokoneen ongelmanratkaisun tehokkuutta voidaan parantaa.
Vektoritietokoneissa pääongelma rinnakkaisuuden asteen lisäämisessä on vektorien käyttäminen operandien edustamiseksi, jotka voidaan prosessoida rinnakkain.Monet yleisesti käytetyt numeeriset laskentamenetelmät, kuten sekvenssien summaus, matriisin kertominen, Gaussin eliminaatio, nopea Fourier -muunnos jne.., on onnistuneesti toteutettu rinnakkain vektoritietokoneissa.Suositumpi rinnakkaiskieli on pohjimmiltaan Fortran -kielen jatko.
Moniprosessorijärjestelmässä avain ohjelman rinnakkaisuuden parantamiseen on hajottaa tehtävät tarpeeksi prosesseiksi, joita voidaan käyttää samanaikaisesti.Ohjelmointikielellä on tarpeen laajentaa lausuntoa, joka voi selvästi ilmaista prosessin samanaikaisuuden, jotta vastaava ohjausmekanismi voi tarjota ohjaus- ja hallintavälineitä ohjelman toiminnan aikana, mukaan lukien rinnakkaisten tehtävien johdannainen, viestintä ja ajoittaminen.ADA -kieli antaa tarvittavat lauseet moniprosessorien rinnakkaisten ohjelmien kuvaamiseksi. Several data flow languages such as Id language and VAL language that have emerged to adapt to data flow computers have been tried out. Its important feature is that it treats arrays as values rather than targets.Tietokielellä kirjoitetut ohjelmat voivat luonnollisesti ilmaista operaatioiden maksimaalisen rinnakkaisuuden.
Rinnakkaiskäsittelyjärjestelmän luokittelu
Rinnakkaisprosessointijärjestelmien luokittelussa yleisimmin käytetty on jakaa tietokonejärjestelmät neljään luokkaan tietojen virtauksen ja ohjevirran monikerroksen perusteella tietokonejärjestelmässä :
(1) Yhden ohje yhden datavirran tietokonejärjestelmä
Yhden ohjeen yksittäinen data, SISD -tietokonejärjestelmä, SISD -tietokonejärjestelmässä, yhden prosessorin prosessori suorittaa yhden käskyvirran suorittamaan toimintoja yhdestä käytettävissä olevaan muistiin tallennettuihin tietoihin.Tyypillinen esimerkki SISD-tietokoneesta on yhden prosessorijärjestelmä, jossa ei ole rinnakkaista prosessointimenetelmää.
(2) Yhden ohjeen useita tietovirtajärjestelmää
Yhden ohjeen useita datavirtaustietokonejärjestelmää, yhden käskyjen useita tietoja, SIMD -tietokonejärjestelmä, SIMD -tietokonejärjestelmässä yksi ohje voi synkronisesti hallita useita prosesseja, jokaisella prosessilla on liittyvä tietomuisti, joten yksi käsky voi suorittaa saman toiminnan eri tavallatietoryhmät.SIMD -tietokone
(3) Useiden ohjeiden yksittäinen tietovirtajärjestelmä
Useita ohjeita yksittäinen datavirran tietokonejärjestelmä, useita ohjeita yksittäisiä tietoja, MISD -tietokonejärjestelmä voi toteuttaa useita peräkkäisiä tietoja prosessorin toiminta.Jokainen prosessori suorittaa erilaisen ohjesarjan.Varsinaisessa järjestelmässä ei ole täydellistä misd -tietokonetta.
(4) Monimuotoisen monitietovirtajärjestelmä
Useita ohjeita Useita tietoja, MIMD -tietokonejärjestelmä, MIMD -tietokonejärjestelmässä, prosessorin useita prosessoreita suorittaa erilaiset ohjesekvenssit rinnakkain ja prosessoi erilaisia tietoja.MIMD-tietokoneet ovat oikeastaan moniprosessorin rinnakkaisia järjestelmiä.MIMD: n organisaation mukaan kukin prosessori on universaali, ja jokainen prosessori voi käsitellä kaikki tiedot ja täydelliset ohjeet vastaaville tietotoimille.MIMD -järjestelmä voidaan jakaa edelleen myös kunkin prosessorin viestintätilan mukaan.Jos jokaisella prosessorilla on muistin, kukin prosessori käyttää jaetun muistin ohjelmia ja tietoja ja kommunikoi keskenään toissijaisen muistin kautta.Tämän jäsennellyn järjestelmän yleisin muoto on SMP -järjestelmä.SMP tajuaa, että useat prosessorit jakavat yhden muistin tai muistiryhmän jaetun väylä- tai muun kytkentätavan kautta.SMP -tallennusjärjestelmässä muistirajapinnan suorituskyky on periaatteessa sama jokaiselle prosessointiyksikölle, ts. Jaetun tallennuksen hankintatapahtumat ovat periaatteessa samat jokaiselle prosessointiyksikölle.Ryhmä riippumattomia prosessoreita tai SMP: tä voidaan yhdistää tietokoneiden tai jopa tietokoneiden tai jopa verkkolaitteiden välisillä kiinteillä poluilla klusterijärjestelmän muodostamiseksi.NUMA -järjestelmä toteuttaa luku-/kirjoitussoiton eri nopeudet sisäiseen muistiin, jotta pääsyaika liittyy prosessointiyksikön käyttämään sijaintiin.
Rinnakkainen tietokonejärjestelmä ja sen tallennussuunnittelu
Tietotekniikan kehittämisen ja laitteistokustannusten laskun myötä suunnittelijat ovat yhä enemmän etsineet tapoja saavuttaa rinnakkaisuus.Niistä monet prosessorin rinnakkaisjärjestelmä voi parantaa huomattavasti tietokonejärjestelmän suorituskykyä.Rinnakkaisprosessointijärjestelmässä prosessointiyksiköt voidaan suorittaa rinnakkain syöttötyökuorman tasapainon suhteen.Tällä hetkellä yleisimmin käytettyjä rinnakkaisia moniprosessorien organisaatiomenetelmiä ovat symmetrinen moniprosessori (SMP), klusterijärjestelmä (klusteri) ja epäyhtenäinen muisti (NUMA).SMP käyttää useita identtisiä tai vastaavia prosessoreita moniprosessorin tietojenkäsittelyjärjestelmän muodostamiseen väylä- tai kytkentätaulukon yhdistämisessä, joka on tavallisessa merkityksessä moniprosessorin tietokone.SMP -järjestelmässä tärkein ongelma on tallennustilanteessa.Jokaisella prosessorilla on itsenäinen tallennustila, nimittäin nopea välimuisti.Kun eri prosessorien välimuistissa ilmestyy tietorivi, jos välimuistin sisältöä muokataan, myös muiden välimuistin ja pääsuistin sisältö olisi päivitettävä.Tämän ongelman ratkaistiin välimuistin konsistenssiprotokolla.Klusterijärjestelmän muodostuu kokonaisten tietokoneiden ryhmä, joka on kytkettynä, yhtenäisenä tietojenkäsittely resurssina tietojenkäsittelyä varten koko klusterin ulkopuolelta voidaan pitää klusterina käsittelyä varten.NUMA-järjestelmä tajuaa moniprosessorien rinnakkaisen työn jaetun muistin avulla.NUMA: n pääominaisuus on, että järjestelmän tietyn prosessorin muistinsanan käyttöaika vaihtelee muistinsanan sijainnin mukaan.