A dekompozíció és az ütemezés iteratív összehangolása a rendszerszintű szintézisben
A heterogén multiprocesszoros rendszerek megjelenésével egy teljesen új út nyílt meg a rendszerszintű szintézis terén. A DSP-k, FPGA-k és GPU-k lényegesen megváltoztatták a tervezés menetét, valamint azt a fajta a gondolatmenetet, ahogyan az egyes feladatokat implementáljuk. Az elmúlt évtizedben számos rendszerszintű szintézer eszköz jelent már meg.
Ebben a dolgozatban egy új megközelítést szeretnék bemutatni az ilyen rendszerek tervezési folyamatára. Ezt két, általam kifejlesztett, egymáshoz kapcsolódó algoritmus valósítja meg. Az első algoritmus, a Súlyozott Normalizált Vágás (Weighted Normalized Cut, WNCut) a dekompozíciót helyettesíti, ennek lényeges előnyei bizonyíthatók. A legtöbb tervezőeszköz iterációs módszereket használ, hogy a felhasználó számára a legjobb megoldást keresse. Ez az intuitív módszer azonban többnyire lelassítja a tervezés folyamatát, és ez rendkívül hátrányos. A WNCut algoritmusa zárt formulákat használ; ezeknek matematikai megoldásai az iterációk számát jelentősen csökkentik, valamint nemdiszkrét megoldást szolgáltatnak annak érdekében, hogy az előre meghatározott prioritások később érvényre juthassanak az ütemezés során.
A WNCut eredményeként egy olyan adathalmazt kapunk, amely az allokáció és az ütemezés bemeneti paramétereként fog szolgálni. Ehhez fejlesztettem ki a másik új algoritmust: a Dinamikus Ütemezőt (Dynamic Scheduler, DS). A dekompozíció helyettesítésével és a WNCut alkalmazásával elérhetjük, hogy közvetlenül a DS algoritmusát használjuk a feladatok felosztására, majd az erőforrásokhoz rendelésére, figyelembe véve a feladatok legkorábbi indulási idejét. Ezáltal az első lépésben a WNCut analizálja a folyamatot, a második lépésben a DS pedig elvégzi a feladat ütemezését és felosztását anélkül, hogy esetlegesen újra kellene futtatni egy dekompozíciós algoritmust, hiszen a DS egy jobb vágás kiválasztása érdekében a már meglévő adathalmazt használja fel.
Az új módszer nagy hatékonysággal használható fel például felhőalapú alkalmazásokban, ahol a rendszernek működés közben akár többször is, minél rövidebb idő alatt el kell tudnia végezni a tervezési lépéseket a változó rendszerparaméterek miatt.
A dolgozatban bemutatott módszer – véleményem szerint – egy versenyképes rendszerszintű szintézist végző eszköz alapja lehet.
szerző
-
Markovits Tibor Gergely
Villamosmérnöki szak, alapképzés
alapképzés (BA/BSc)
konzulensek
-
Dr. Arató Péter
egyetemi tanár, Irányítástechnika és Informatika Tanszék -
Rácz György
adjunktus, Irányítástechnika és Informatika Tanszék