next up previous contents
Next: Projektioiden välittäjä -prosessi Up: Tiedostojen lataaja -prosessi Previous: Elektronimikroskooppikuvien jakaminen

Laskettavien kulmien välittäminen

Tiedostojen lataajan -prosessin viimeinen tehtävä on huolehtia laskettavien kulmien välittämisestä projisoijille. Yksi tavoite on, että kaikki projektioiden tuottaja -prosessit saavat ne kulmat joista projektioita pitää laskea mahdollisimman optimaalisissa ja sopivan kokoisissa ryhmissä. Lisäksi on vielä huolehdittava siitä, että mahdollisesti konfiguraatiomoduulin ilmoittamien lasketut kulmat -tiedostojen sisältämiä kulmia ei välitetä enää projektioiden tuottajille.

Tiedostojen lataaja -prosessil lukee konfiguraatiomoduulin muuttujan pro-jec-ti-on_ang-les_file_name osoittaman tiedoston muistiin. Tämä laskettavat kulmat -tiedosto kertoo kaikki kulmat, jotka on tarkoitus käsitellä laskennan aikana.

Seuraavaksi prosessi lukee kaikki completed_projection_angles_file_name muuttujan osoittamat valmiit projektiokulmat -tiedostot ja merkitsee niiden osoittamat kulmat erityiseen käsitellyt kulmat -muistikarttaan.

Kolmas tiedosto, jonka tiedostojen lataaja -prosessi lukee, on konfiguraatiomoduulin muuttujan projection_angle_groups_file osoittama kulmaryhmät -tiedosto. Kulmaryhmät -tiedostossa on merkittynä ne jaksot kulmatiedostossa, jotka on tarkoitus laskea aina kerrallaan yhdellä projektioiden tuottaja -prosessilla. Jos tämä tiedosto puuttuu, kaikkien jaksojen oletetaan sisältävän konfiguraatiomoduulin muuttujan max_projection_angle_group_size osoittaman määrän kulmia.

Näiden kolmen tietorakenteen perusteella tiedostojen lataaja -prosessi siirtyy tarjoamaan projektioiden tuottajille laskettavia kulmia. Menetelmä jolla kulmaryhmät muodostetaan on yksinkertainen. Käsiteltävät kulmat -tiedostoa käydään järjestyksessä läpi poistaen ne kulmat jotka on merkitty käsitellyt kulmat -muistikarttaan.

Aina kun on käyty läpi yhden kulmaryhmätiedostossa määritellyn ryhmän kulmat, jäljelle jääneet kulmat sijoitetaan yhteen puskuriin, jonka lähetys aloitetaan sille ensimmäiselle projektioiden tuottaajalle, joka on jo vastaanottanut edellisen joukon kulmia. Kulmajoukot lähetetään kutsumalla rinnakkaistamismoduulin funktiota send_projection_reqs.

Kun käsiteltäviä kulmia ei ole enää jäljellä tiedostojen lataaja -prosessi siirtyy odottamaan, että tulostenkerääjä prosessi -lopettaa koko järjestelmän toiminnan saatuaan viimeisen tuloksen kirjattua levylle.


next up previous contents
Next: Projektioiden välittäjä -prosessi Up: Tiedostojen lataaja -prosessi Previous: Elektronimikroskooppikuvien jakaminen
T Valtteri Rahkonen
2000-04-02