Computational problems

Számítási problémák


Az informatikában a számítási problémák csoportosításának egyik módja az, ha megvizsgáljuk a "párhuzamosságuk" fokát. Szét lehet-e osztani az adott problémát elemi részproblémák sokaságára, melyeken különböző processzorok párhuzamosan dolgozhatnak? Ha igen, akkor számításának sebességét nagyban megnövelheti több gép használatával.

Egy másik kategóriát képvisel a probléma granularitása. Nagymértékben függ-e bármely részprobléma a többi eredményétől? Ha igen, finom felbontású párhuzamos kalkulációkkal van dolgunk. Ilyen esetet képviselnek például az időjárási számítások, ami sok kisebb számításra osztható fel a légköri alapminták vonalán. Ezen számítások mindegyike nagyban függ a szomszédos minták történéseitől. Sőt, az időjárás változásai egymástól nagyon távoli helyek esetében is kihathatnak egymásra - ez az eredete a híres mondásnak, miszerint egy pillangó szárnyverdesése Kínában hurrikánt okozhat Amerikában. A gyakorlatban a finom-felbontású párhuzamos számítások nagyon gondos programozást igényelnek a párhuzamosság megteremtéséhez, ami azt jelenti hogy a processzorok számára a megfelelő időben a megfelelő információ legyen elérhető.

A másik végletet a granularitás tekintetében a durva felbontású, vagy zavarbaejtően párhuzamos számítások adják, melyeknél minden részprobléma teljesen független a többitől. Ilyenek például az úgynevezett Monte Carlo szimulációk, melyekben egy valós rendszer komplex modelljében változtathatjuk a paramétereket, és statisztikai technikákkal elemezhetjük az eredményeket - a számítógépes kísérletezés egyik fajtája ez. Mindegyik kalkuláció a többitől függetlenül végezhető ebben az esetben. Egy másik példa a zavarbaejtően párhuzamosra, az orvosi ábrák adatbankjának elemzése, ahol mindegyik ábra független a többitől.

Gyakorlati szabályként elmondható, hogy a finomszemcsés kalkulációk jobban illenek a nagy, monolitikus szuperszámítógépekhez, esetleg a nagyon szorosan összekapcsolt klaszterekhez, ahol a sok megegyező processzor között rendkívül gyors, megbízható hálózat van, hogy biztosítsa a torlódásmentességet a kommunikáció folyamatában. Erre a számítógéptechnikára gyakran hivatkoznak, mint "nagy teljesítményű számítógép-felhasználás".

A másik véglet tekintetében, a zavarbaejtően párhuzamos kalkulációkhoz ideálisak a lazán-csatolt hálózatok, hiszen a processzorok eredményei közötti késleltetések nem befolyásolják egymást. Ezen típusú számításokra gyakran hivatkoznak mint "magas áteresztőképességű számítógép-felhasználás".

Első pillantásra ez a megkülönböztetés azt sugallhatja, hogy a Grid csak a zavarbaejtően párhuzamos számításokra alkalmas. Sokszor azonban az érdekesebb tudományos problémák a finom- és durvaszemcsés megközelítés kombinációját igénylik. És ez az, amiben a Grid különösen erőteljes lehet.

Például egy teljes éghajlat modell készítésénél a Földről, a kutatók szeretnék látni, hogyan függnek számításaik a modellek különböző paramétereitől. Így sok hasonló számítást akarnak indítani. Mindegyik finomszemcsés parallel kalkuláció, mert az éghajlat előrejelzése az időjárás előrejelzéséhez hasonló, egy hosszabb időtávra nézve. Így mindegyik számításnak egy egységes klaszteren vagy szuperszámítógépen kell futnia.

Azonban a sok független kalkuláció felosztható különböző klaszterekre a Griden, ily módon adva a folyamathoz a durvaszemcsés párhuzamosságot, és megtakarítva rengeteg időt. Még, ha csak arra használják a Gridet, hogy a tudós számára hozzáférést biztosítsanak egy szabad klaszterhez, mely bárhol lehet a világban, óriási időt tudnak ezzel megtakarítani ahhoz képest, mintha egy helyi klaszterre kellene hosszú soron keresztül várakozni.