Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
30 Paralelizacija GA za rešavanje nekih NP-kompletnih problema<br />
⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯<br />
- Modeliranje nekog realnog višeprocesorskog sistema u cilju bližeg<br />
upoznavanja sa datim sistemom i eventualno razvijanje konkretnih aplikacija. U<br />
tom slučaju bi sve pripremne <strong>rad</strong>nje u razvoju date aplikacije bile urađene na<br />
simulatoru, a samo konačno izvršavanje aplikacije bi bilo izvršeno na<br />
konkretnom paralelnom računaru. Jedan od primera simulatora MPI standarda<br />
za PC računare pod operativnim sistemom Windows 3.1 se može videti u <strong>rad</strong>u<br />
[Mey94].<br />
- Simulatori nekog imaginarnog višeprocesorskog sistema, čija je najvažnija<br />
namena što lakše upoznavanje šireg auditorijuma sa paralelnim konstrukcijama.<br />
Zbog toga su relativno zanemareni ostali važni segmenti kao što su<br />
kompatibilnost sa ostalim sistemima i performanse datog simulatora. Oni su<br />
često zamišljeni kao podrška odgovarajućim knjigama ([Les93]), ili kursevima<br />
paralelnog programiranja.<br />
Ovakvi sistemi mogu poslužiti za upoznavanje sa osnovnim karakteristikama<br />
paralelnih računara, ali zbog niza nedostataka nisu pogodni za širu primenu.<br />
Iako je teorijski moguće simulirati sve elemente paralelnog računara, u praksi<br />
rezultati u velikoj meri odstupaju od očekivanih. To je posledica činjenice da se<br />
simulacija vrši na jednoprocesorskom računaru, gde je nemoguće simulirati<br />
neke vrlo važne fizičke karakteristike višeprocesorskog računara: problemi sa<br />
paralelnim pristupom memoriji, relativno spora međuprocesorska komunikacija,<br />
različite karakteristike pojedinačnih procesora unutar paralelnog računara i neke<br />
od ostalih efekata realnog paralelnog računara. Zbog toga je moguće da<br />
rezultati dobijeni na simulatoru budu potpuno nereprezentativni, pa čak i u<br />
kont<strong>rad</strong>ikciji sa rezultatima iste aplikacije na realnom paralelnom računaru. Iako<br />
dati pristup ima vrlo velike nedostatke, ranije je relativno često korišćen, zbog<br />
relativno visoke cene višeprocesorskih računara u prošlosti.<br />
<strong>1.3</strong>.2.2 Multiprocesorski sistemi nižih performansi<br />
Prvi šire dostupni i relativno jevtini višeprocesorski sistemi su se pojavili 80-<br />
tih godina (transpjuteri, ICUBE, itd). Transpjuterski sistemi su bili najpoznatiji<br />
predstavnici ove klase paralelnih računara, zasnovanih na transpjuterima kao<br />
osnovnim procesorima, gde je međuprocesorska komunikacija vršena<br />
prosleđivanjem poruka. Ploče sa transpjuterima su se ugrađivale u PC računare<br />
ili Sun <strong>rad</strong>ne stanice, koji su obezbeđivali ulazno/izlazne operacije. Nisu<br />
razvijani novi operativni sistemi, već su korišćeni postojeći operativni sistemi<br />
domaćinskih računara (host computers). Paralelizacija je ostvarivana paralelnim<br />
konstrukcijama u okviru konkretnih programskih jezika, koji su nastajali<br />
nadog<strong>rad</strong>njom postojećih (paralelni C) ili razvojem potpuno novih programskih<br />
jezika prilagoženih paralelnom izvršavanju (Occam). Više informacija o<br />
transpjuterskim sistemima se može naći u [Moc89] i [Tra89a].<br />
I pored brojnih tehničkih ograničenja, ovakvi višeprocesorski sistemi su u<br />
vreme pojavljivanja doprineli širokoj popularizaciji paralelnih računara i<br />
upoznavanju šireg kruga ljudi sa paralelnim konstrukcijama na realnom<br />
višeprocesorskom računaru. Međutim u poslednje vreme su u većini slučajeva<br />
praktično napušteni kao paralelna platforma zbog nedovoljne sistemske<br />
podrške, relativno malog broja paralelnih konstrukcija i njihove ograničene<br />
izražajnosti, kao i zbog nedostatka efikasnih alata za razvoj i testiranje<br />
aplikacija.