Graafisymbolinen ohjelmointitekniikka on ohjelmistoalgoritmien suunnittelu- ja koodaustekniikka , joka perustuu ohjelmien graafiseen esitykseen ja jonka tarkoituksena on automatisoida kokonaan tai osittain ohjelmistojen suunnittelu-, koodaus- ja testausprosessit .
Graafi -symbolinen ohjelmointitekniikka on graafinen ohjelmointikieli , joka mahdollistaa rinnakkaisten algoritmien kuvaamisen ohjausgraafin avulla ja ohjelmakoodien automaattisen generoinnin.
Mallia edustaa nelinkertainen , jossa on joukko tietyn aihealueen dataa, on joukko operaattoreita, jotka on määritelty aihealueen datan yli, on joukko predikaatteja, jotka vaikuttavat aihealueen tietorakenteisiin, on suunnattu merkitty kaavio. on graafin kärkipisteiden joukko. Jokainen kärkipiste on merkitty paikallisella operaattorilla . Kaaviossa on joukko ohjauskaaria ja joukko synkronointikaareja . on kärkijoukkojen ja kaarien välinen relaatio, joka määrittää tavan, jolla ne yhdistetään. Ohjauskaari, joka yhdistää mitkä tahansa kaksi kärkeä ja jolla on kolme otsikkoa: predikaatti , prioriteetti ja kaarityyppi . Jokainen synkronointikaari on merkitty viestillä .
Kaarityyppi määritellään funktioksi, jonka arvoilla on seuraava semantiikka:
Mallin toiminta alkaa alkupisteen merkitsevän
operaattorin suorittamisesta . Mallin kuvaaman laskentaprosessin kehittämiseen liittyy siirtymiä kärjestä kärkipisteeseen ohjauskaaria pitkin. Tässä tapauksessa siirtyminen ohjauskaarta pitkin on mahdollista vain, jos predikaatti, jolla se on merkitty, on tosi. Jos useita kärjestä lähteviä kaaria merkitseviä predikaatteja tulee todeksi samaan aikaan, siirtyminen suoritetaan korkeimman prioriteetin kaaria pitkin.
Yhdensuuntaisuuden kuvaamiseksi otetaan käyttöön rinnakkaisen haaran käsite - graafin osagraafi, joka alkaa yhdensuuntaisella kaarella (tämän kaaren tyyppi on ) ja päättyy päättyvään kaareen (tämän kaaren tyyppi on ). , jossa on haarapisteiden joukko, on haaran ohjauskaarien joukko, on haarapisteiden ja kaarien joukkojen välinen suhde, joka määrittää tavan, jolla ne yhdistetään. Rinnakkaisen haaran kärjestä lähtevät kaaret kuuluvat myös haaraan . Kun koodataan ehdotetulla mallilla kuvattu algoritmi, jokainen rinnakkaishaara generoi erillisen prosessin - joukon alirutiineja, jotka suoritetaan peräkkäin yhdellä rinnakkaislaskentajärjestelmän prosessoreista. Graafinen malli sisältää yleensä useita rinnakkaisia haaroja, joista jokainen muodostaa erillisen prosessin. Tässä mielessä rinnakkaislaskentamalli voidaan esittää useiden rinnakkaisten haarojen liittona. Näin ollen laskelmien rinnastaminen on mahdollista vain graafimallin tasolla. Laskelmat minkä tahansa toimijan sisällä suoritetaan peräkkäin.
Objektien - aggregaattien - GSP-tekniikassa käytetään valvontajärjestelmää laskelmien järjestämiseen. Menetelmä perustuu laskentaprosessin keskitettyyn ohjaukseen, joka suoritetaan erikoisohjelmalla - graafikoneella.
Graafikone on universaali kaikille algoritmeille. Graafikoneen lähtötieto on edellä kuvatun laskennallisen prosessin ohjausgraafin malli. Kun se analysoi mallia, se suorittaa toimijat ja aggregaatit sopivassa järjestyksessä, arvioi predikaattiarvoja ja hallitsee ajoitusta. Jokaiselle rinnakkaishaaralle käynnistetään yksi kopio graafikoneesta, mikä on erillinen prosessi laskentajärjestelmässä.
GSP-teknologia käyttää standardia moduulien välisen tietorajapinnan järjestämiseen. Standardi varmistetaan toteuttamalla seitsemän perussääntöä:
Ohjelman suoritusympäristö valitsee koneen, jolla globaalien POP-muuttujien tallentamisesta vastaava prosessi käynnistetään. Ottaen huomioon CS:n laitteisto-ominaisuudet ja topologia, tämä voi olla solmu, jolla on eniten RAM-muistia, tai keskussolmu, jolla on pienin pääsyaika mistä tahansa klusterin muista solmuista. Tämän lähestymistavan etuna on, että laskentasolmujen muistiresurssi säästyy merkittävästi, koska muistia varataan solmuille vain niille muuttujille, joita käytetään.
Esitetty idea tiedon tallennuksen ja vaihdon järjestämisestä rinnakkaisten prosessien välillä on suunnattu viestinvälitysmalliin, jossa jokainen prosessi toimii paikallisen datan kanssa. Esimerkiksi MPI-standardi edellyttää, että prosessoivat tiedonvaihtoa vain sen seurauksena, että ne lähetetään viestien muodossa.
Kuvattu tiedonvaihtomenetelmä edellyttää tiedonhallinnan käsitteen käyttöönottoa - alirutiinia, joka suorittaa toimialuetietojen tallentamisen, lukemisen ja muokkaamisen.
Tiedonhallinta suoritetaan rinnakkaisohjelman erillisessä prosessissa. Graafimallin rinnakkaisissa haaroissa joidenkin tietojen lukemiseksi tai kirjoittamiseksi käytetään muistinhallintaohjelmaa sanomajoukon avulla. Ensimmäinen viesti lähettää pyynnön lukea tai kirjoittaa tiettyä dataa. Jokainen muuttuja POP:sta saa yksilöllisen numeron, jonka avulla muistinhallinta voi tunnistaa sen. Lukemisen tapauksessa rinnakkaishaara jatkaa odottamaan vastausta tiedonhallinnasta. Kirjoitettaessa toinen viesti lähettää muuttujan uuden arvon. Tiedonhallintajärjestelmä vastaanottaa ja käsittelee pyynnöt rinnakkaishaaroista.