Grafikus kártyára fejlesztett valós idejű rendszerek

Fejlesztés Olvasási idő:3 perc

Grafikus kártyára fejlesztett valós idejű rendszerek

Az elmúlt több mint egy évben egy olyan rendszer fejlesztésén dolgoztunk, ami minden szempontból kihívás volt. Szakmailag, és az ügyfél magas elvárásai miatt is. Nemzetközi, több évtizede az iparban dolgozó nagy európai vállalatok termékét tudtuk kiváltani, úgy, hogy közben olyan feladatokon dolgozhattunk, ami fejlesztőként is nagy kihívás volt.

Mi a projekt és mik voltak ezek a kihívások?

Az NMHH frekvenciagazdálkodási tevékenysége kapcsán felügyeli, hogy a frekvencia használat a koncessziós szerződéseknek és az engedélyeknek megfelelően történik-e. Ehhez számos mérőállomást és mérőberendezést használ a saját gyártó specifikus szoftverével, egyedi vezérlő felületével.

A feladat az volt, hogy az összes gyártó, összes alkalmazott eszközét egyetlen felületről vezérelhessék. Ez idáig még szokványos is lehetne, de közösen a megrendelővel úgy döntöttünk, hogy ez legyen webes. Még ez sem kéne, hogy nagy kihívás legyen, de mi valami tényleg nagyot és szakmailag „lehetetlent”, de legalábbis különlegeset akartunk építeni. A marketinges azt mondaná, hogy jövőállót, de inkább csak olyat, amire mi, fejlesztők is büszkék lehetünk.

Nagy feladat volt a többféle gyártó készülékével az integráció. Voltak kifejezetten jól dokumentált eszközök és voltak közel dokumentálás nélküli rendszerek is. Ez utóbbiak voltak az izgalmasabb feladatok. Hasonlóan nagy kihívás volt, hogy a mért adatokat valós időben jelenítsük meg, ráadásul egyszerre több eszközét. Térképen is.

Ezt a számítási kapacitást csak a dedikált videókártya, és az arra írt szoftver tudja kezelni. Azaz a rendszerbe épített spektrum elemző felület úgy lett megírva, hogy böngészőből, de a grafikus kártyán fusson, arra lett optimalizálva, hogy 60 FPS-sel tudja megjeleníteni a mért spektrum adatokat.

Összehasonlításként, a jelenlegi rendszerek hagyományos desktop alkalmazásként működnek, és sokkal kevesebb adattal képesek dolgozni valós időben. Fenntartásuk, telepítésük, frissítésük kényelmetlen, sokszor a különböző konfigurációk ütközést is okoztak. Ezeket tökéletesen meg lehet oldani a webes rendszerekkel, de csak úgy, hogy a nagy számítási igény miatt a grafikus kártya lehetőségeit kihasználva optimalizáltuk a rendszert.

Mi évek óta Java-ban fejlesztünk, Oracle és PostgreSQL adatbázisokra építettük ezeket a rendszereket is. A fejlesztés során az államigazgatásban még ritkábban használt „journey” szemlélettel alakítottuk ki a folyamatokat, a kezelőfelületeket. Azaz, hogy mi a valódi folyamat, hogyan lesz kényelmes azoknak, akik ezt használni fogják. Mikor mi a fontos, és mi nem? Elsőre furcsa volt, hogy a már meglévő rendszerek felépítése jelentősen különbözött az ügyfél elvárásaitól, kényelmetlennek, helyenként nehézkesnek tűntek. A különbségre kerestük a válaszokat, és gyorsan kiderült számunkra, hogy azzal, ha az egészet a térkép köré építjük, és maga a térkép válik „interaktívvá”, jelentősen egyszerűsíthetjük a munkát, mert mindenki vizuálisan gondolkozik és dolgozik.

A másik nagyon szeretett funkció, amire mi is büszkék vagyunk, hogy egyszerre a teljes frekvencia spektrumot (pl. 20 MHz – 6 GHz) meg tudjuk jeleníteni a rendszerbe épített spektrum elemző felületen. Azaz egyszerre lehet látni azokat a területeket, ahol a frekvencia spektrum használatban van, és nem kell egyesével a különböző méréseket és a várt-valós adatokat összehasonlítani. Így a korábbi hosszas bogarászás és adatelemzés helyett gyakorlatilag egy pillantás alatt meg lehet találni azokat a frekvenciákat, ahol van valamilyen jel (műsorszórás, pl. FM rádió, DVB-T ; adatkommunikáció, pl. 4G), pedig nem lehetne, vagy fordítva.

Grafikus kártyára fejlesztett valós idejű rendszerek - kép

Mindezek tetejére a rendszert integráltuk a frekvenciagazdálkodás engedélyezési adatbázisával, egy másik Oracle-alapú rendszerrel, így a mérési adatok mellett látható az is, hogy mire van egyáltalán engedély.

Miért volt különleges ezen a projekten dolgozni?

A Combitnál mindig a legjobbat akarjuk nyújtani. És erre lehetőségünk is van. Nem a leggyorsabban, vagy a legolcsóbban akarjuk a munkát elvégezni, hanem a legjobban. Mindenki ezt mondja, tudom, de nekünk tényleg lehetőségünk van akár sokkal több munkaórában is, egy sokkal jobb megoldást építeni, ha szerintünk az a tökéletes.

Ha tudunk egy jobb megoldást, lehetőségünk van megvalósítani azt. Akár ebben a projektben. Google Maps, JAVA, Oracle, PostgreSQL, grafikus kártya alapú adatelemzés (WebGL), webes user interface-szel megfejelve. Ezek együtt olyan dolgok, amiket ritkán van a fejlesztőnek lehetősége egyszerre átlátni, használni, dolgozni vele. És látni működni, pozitív referenciát kapni.

A szakmai kihívás mellett legalább akkora élmény, hogy az ügyfelek bíznak bennünk, a munkánkban, a döntéseinkben.

A Java persze még csak most jön, mert célunk, hogy ez a rendszer minél több országban fusson. A projektnek jelentős, pozitív nemzetközi visszhangja volt, és egy mérőműszer gyártó is megkeresett minket, hogy a jövőben a SIMon szolgáltatásaival egészítse ki a mérőeszközöket. A NATO delegátusa előtt is prezentálhattunk.

A Combit Zrt. az idei évtől a Grepton Csoport tagjaként tovább viszi a közel 20 éves hagyományát a minőségi egyedi fejlesztéseknek. Rendszereket építünk Oracle technológiákra, web környezetre, de mobilapplikációkkal, sőt beágyazott szoftverekkel is foglalkozunk. Az elmúlt évek sikeres projektjei lehetőséget adnak, hogy úgy technológiai oldalról, mint a fejlesztések témáit illetően nagyon változatos környezetekben tudjuk megmutatni tudásunkat, ami természetesen a tudásunkat is folyamatosan fejleszti – hiszen tudjuk, a pálma is teher alatt nő…