Párhuzamos gráfbejárási algoritmusok vizsgálata .NET platformon

OData támogatás
Konzulens:
Nagy Ákos
Automatizálási és Alkalmazott Informatikai Tanszék

Elterjedtek a párhuzamos végrehajtásra képes többmagos processzorok, azonban ezek hatékony kihasználásához párhuzamos algoritmusok és ezeket felhasználó szoftverek szükségesek. Soros megoldásokhoz képest teljesítménynövekedést érhető el hatékony párhuzamos megoldás felhasználásával.

A .NET keretrendszerben sok struktúra és megoldás található, melyek a párhuzamosítást segítik elő, azonban nem létezik olyan függvénykönyvtár, amely objektum-gráfok hatékony párhuzamos sorosítására lenne képes. Egy általános párhuzamos sorosító könyvtár alkalmazásával fejlesztők ki tudnák használni a többmagos architektúrák lehetőségeit, és így teljesítménynövekedést tudnának elérni sorosítás és visszaolvasás során. A dolgozat egy ilyen szoftverkönyvtár alapjait fekteti le.

Dolgozatomban a párhuzamosított sorosítás problémájára általam tervezett és implementált megoldásokat, algoritmusokat dolgoztam ki. Ismertetem ezek működését, teljesítményjellemzőit, a felhasznált gráf-bejárási algoritmusokat, valamint a hozzájuk a .NET keretrendszerből felhasznált megoldásokat, struktúrákat, azok előnyeit, valamint platform specifikus problémákat.

Figyelembe véve, hogy minden sorosítási feladat más és más a jelentősen eltérő jellegű objektum-gráfok miatt, így a mérésekhez egy objektum-gráf fajtát definiáltam. Ezen vizsgáltam a sorosítás párhuzamosíthatóságának lehetőségeit és hatásait.

A viszonyítási alapként választott leggyorsabb soros megoldásomhoz képest 2.7-szeres sorosítási sebességet mértem a legjobb esetben egy 4 magos processzorral felszerelt számítógépen. Az itt bemutatott algoritmusok és hozzájuk tartozó eredmények demonstrálják, hogy elérhető teljesítménynövekedés párhuzamosítás felhasználásával nagyobb méretű objektum-gráfok sorosítása során.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.