| | SLO | ENG | Piškotki in zasebnost

Večja pisava | Manjša pisava

Izpis gradiva Pomoč

Naslov:A general-purpose node editor for graph pipelines with just-in-time parallel execution : master's thesis
Avtorji:ID Nikov, Mitko (Avtor)
ID Mongus, Domen (Mentor) Več o mentorju... Novo okno
ID Žalik, Mitja (Komentor)
Datoteke:.pdf MAG_Nikov_Mitko_2026.pdf (56,69 MB)
MD5: 1B9321E6F42C85C5CB7B7A7E7EDB494A
 
Jezik:Angleški jezik
Vrsta gradiva:Magistrsko delo/naloga
Tipologija:2.09 - Magistrsko delo
Organizacija:FERI - Fakulteta za elektrotehniko, računalništvo in informatiko
Opis:In this thesis, we design a general-purpose, high-performance node editor for graph-based pipelines. It supports dynamically loading and hot-reloading node definitions via DLLs, integrates (JIT) parallel execution, and works with an advanced variant and type conversion system. We also introduce a custom-built retained-mode Direct2D rendering engine optimized for node graph visualization and interaction. The proposed implementation is validated through a series of evaluations, including an applied geospatial pipeline, JIT scheduling performance across input sizes, and scalability on synthetic, highly parallel graphs. Empirical results indicate near-theoretical multi-threaded speedup with high CPU utilization, overhead reductions on light workloads attributable to the JIT scheduler, and overall low engine overhead. Additionally, a comprehensive comparison with industry-standard editors (LabVIEW, Blender, Unreal Engine) is presented, highlighting the unique support for custom hot-reloadable nodes, CLI execution of individual graphs, and incremental graph execution. Finally, we showcase ongoing real-world deployments of our node editor system.
Ključne besede:node editor, graphs, parallelization, dataflow computation, just-in-time execution
Kraj izida:Maribor
Kraj izvedbe:Maribor
Založnik:[M. Nikov]
Leto izida:2026
Št. strani:1 spletni vir (1 datoteka PDF (XIII, 54 str.))
PID:20.500.12556/DKUM-96980 Novo okno
UDK:004.4'232(043.2)
COBISS.SI-ID:270487555 Novo okno
Datum objave v DKUM:03.03.2026
Število ogledov:206
Število prenosov:64
Metapodatki:XML DC-XML DC-RDF
Področja:KTFMB - FERI
:
Kopiraj citat
  
Skupna ocena:(0 glasov)
Vaša ocena:Ocenjevanje je dovoljeno samo prijavljenim uporabnikom.
Objavi na:Bookmark and Share



Postavite miškin kazalec na naslov za izpis povzetka. Klik na naslov izpiše podrobnosti ali sproži prenos.

Licence

Licenca:CC BY-NC-ND 4.0, Creative Commons Priznanje avtorstva-Nekomercialno-Brez predelav 4.0 Mednarodna
Povezava:http://creativecommons.org/licenses/by-nc-nd/4.0/deed.sl
Opis:Najbolj omejujoča licenca Creative Commons. Uporabniki lahko prenesejo in delijo delo v nekomercialne namene in ga ne smejo uporabiti za nobene druge namene.
Začetek licenciranja:09.02.2026

Sekundarni jezik

Jezik:Slovenski jezik
Naslov:Splošnonamenski urejevalnik vozlišč za grafovske cevovode s sprotnim vzporednim izvajanjem
Opis:V magistrskem delu predstavimo zasnovo in implementacijo splošnonamenskega, visokozmogljivega urejevalnika vozlišč za grafovske cevovode. Ta uporabnikom omogoča vizualno grajenje in izvajanje procesnih cevovodov. Slednji so predstavljeni v obliki acikličnega grafa, pri čemer vozlišča predstavljajo operacije ali funkcije, povezave med njimi pa tok podatkov. Grafovski cevovodi so ključni koncept na številnih področjih, kot so obdelava podatkov, strojno učenje, računalniška grafika in avtomatizacija delovnih tokov, saj omogočajo modularno, pregledno in učinkovito modeliranje kompleksnih procesov. Urejevalnik vozlišč, ki smo ga zasnovali v tem magistrskem delu, je zmogljiv, razširljiv in enostaven za uporabo, zato je v praksi koristen za različne namene. Zasnovani sistem podpira dinamično nalaganje in zamenjavo definicij vozlišč iz dinamičnih knjižnic (DLL) med delovanjem, vključuje sprotno (JIT) vzporedno izvajanje in uporablja napreden sistem tipov s pretvorniki, ki omogočajo varno povezovanje priključkov različnih vhodov in izhodov med vozlišči. Pred zagonom pogon izvaja statično preverjanje grafov, skladnosti podatkovnih tipov ter prisotnosti ciklov, kar zagotavlja pravilnost izračuna. Za vizualizacijo in interakcijo z grafi smo razvili namenski upodabljalni pogon, ki temelji na Direct2D in je optimiziran za izris velikih grafov. Urejevalnik serializira in hrani grafe v formatu JSON, kar omogoča njihovo nalaganje ob ponovnem zagonu in izvajanje grafov brez grafičnega vmesnika prek ukazne vrstice (CLI). S tem omogočamo uporabo sistema v različnih okoljih, vključno s strežniki in avtomatiziranimi cevovodi. Implementirani urejevalnik eksperimentalno ovrednotimo v treh sklopih: (i) praktičen geoprostorski cevovod (agregacija točk in tvorjenje toplotnih kart) od uvoza do vizualizacije, (ii) merjenje zmogljivosti JIT razvrščevalnika ter (iii) razširljivost na sintetičnih usmerjenih acikličnih grafih (DAG) z visoko stopnjo paralelizma. Vgrajena instrumentacija meri uporabniški, procesorski in režijski čas izvajanja. V eksperimentih preizkusimo več nastavitev števila niti, da prikažemo učinek paralelizacije in režijskega časa samega pogona. Empirični rezultati prikazujejo skoraj teoretičen pospešek pri večnitnem izvajanju z visoko izkoriščenostjo CPU, zmanjšanje režijskega časa v primerih z lahkimi obremenitvami, kar je mogoče pripisati JIT razvrščevalniku, in nizek režijski čas pogona. Geoprostorski primer potrdi aplikativno delovanje od uvoza podatkov do vizualizacije, inkrementalno izvajanje pa opazno zmanjša ponovne izračune pri delnih spremembah in iterativnem razvoju cevovoda. Diagnostični podatki omogočajo hitro prepoznavo ozkih grl in optimizacijo cevovodov. V magistrskem delu naredimo tudi obširno primerjavo z obstoječimi urejevalniki vozlišč v industriji in kreativnih okolij (LabVIEW, Blender, Unreal Engine), pri čemer izpostavimo, da ti praviloma ne ponujajo podpore za izmenjavo definicij vozlišč med delovanjem, strogo statično preverjanje grafov, inkrementalno izvajanje ter izvajanje prek CLI. Naš pristop združuje možnost nalaganja zunanjih definicij vozlišč z zanesljivim sprotnim izvajanjem in s tem zapolnjuje vrzel med orodji za hitro iteracijo in orodji za avtomatizirane cevovode. Omejitve in nadaljnje delo vključujejo podporo za zanke in vgnezdeni grafi, izračun s podporo GPU ter pretvorbo obstoječih funkcij PyTorch C++ v vozlišča, kar bi omogočilo nalaganje, urejanje, učenje in inferenco modelov umetne inteligence znotraj urejevalnika vozlišč.
Ključne besede:urejevalnik vozlišč, grafi, paralelizacija, podatkovno vodeno računanje, sprotno izvajanje


Komentarji

Dodaj komentar

Za komentiranje se morate prijaviti.

Komentarji (0)
0 - 0 / 0
 
Ni komentarjev!

Nazaj
Logotipi partnerjev Univerza v Mariboru Univerza v Ljubljani Univerza na Primorskem Univerza v Novi Gorici