Regisztráció és bejelentkezés

Absztrakt adatfolyamalapú utasításredukció párhuzamos programok modellellenőrzésének támogatásához

Az utóbbi évtizedekben a többmagos processzorok és a többszálú programok egyre nagyobb mértékű térhódítását figyelhettük meg ipari és biztonságkritikus rendszerekben a technológia ugrásszerű fejlődésének köszönhetően. A párhuzamos szoftverek verifikációja ugyanakkor jelentős kihívást jelent a szálak nagyszámú lehetséges átlapolódása miatt. A kielégítő tesztlefedettség elérése így nagy kihívást jelent, naiv modellellenőrzési technikák pedig rosszul skálázódnak, e nagyfokú bonyolultság miatt gyakorlatilag alkalmazhatatlanná válnak.

Az absztrakciós-finomítási algoritmusok hatékony technikák az állapottérben való elérhetőség vizsgálatára. Azonban az állapottér bejárása során a követő állapotok kiszámítása, vagyis az utasítások kiértékelése költséges feladat, amely gyakran SMT-probléma megoldását igényli. Másrészről viszont sok esetben egy utasítás kiértékelése nincs hatással az ellenőrzött tulajdonságra. Ilyen esetekben egyszerűsíthető az követő állapotok kiszámítása. Számos algoritmus létezik, amely statikusan elemzi a modellt és eltávolítja a modellből a nem releváns változókat vagy utasításokat. Párhuzamos szoftverekben azonban gyakori, hogy egy utasítás eredményét a szálak egy bizonyos átlapolódásában használják másik utasítások, míg egy másik ütemezés mellett nem használják. A modellt statikusan elemző algoritmusok nem tudják kiegyszerűsíteni az ilyen utasításokat.

Munkámban egy új, dinamikus megközelítést javaslok, amely absztrakt adatfolyam-elemzés segítségével, illetve az egyes szálak aktuális állapota alapján felismeri, hogy egy utasítás egyszerűsíthető-e az állapottér feltárása során. Módszerem jelentősen képes csökkenteni a követő állapot számítására fordított időt, ezáltal pedig a verifikáció teljes idejét is. Végezetül kiértékelem a bemutatott algoritmus teljesítményét egy nagyszámú benchmark programhalmazon.

szerző

  • Telbisz Csanád Ferenc
    Mérnök informatikus szak, mesterképzés
    mesterképzés (MA/MSc)

konzulensek

  • Bajczi Levente
    PhD student, Méréstechnika és Információs Rendszerek Tanszék
  • Szekeres Dániel
    Doktorandusz, Méréstechnika és Információs Rendszerek Tanszék

helyezés

II. helyezett