HYROŠ, R. XDP ovladač pro platformu NDK [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.

Posudky

Posudek vedoucího

Matoušek, Jiří

Bakalářskou práci považuji za nadstandardní jak rozsahem vykonaných prací, tak kvalitou implementovaných programových výstupů. To ostatně potvrzuje i přijetí Lightning Talku na konferenci TNC25. Jedinou drobnou vadou na kráse je tak technická zpráva, která by si ještě zasloužila o trochu víc pozornosti. I přesto hodnotím bakalářkou práci známkou A.

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Informace k zadání Cílem této bakalářské práce bylo implementovat podporu technologie XDP v softwarové části platformy NDK vyvíjené sdružením CESNET. Zavedení této technologie přitom vyžadovalo úpravu nejen v ovladači zařízení využívajících platformu NDK, ale také v softwarových nástrojích využívajících tento ovladač. Spolu s požadavkem na srovnání parametrů implementovaného ovladače s obdobnými implementacemi tak zadání bakalářské práce značně přesahuje běžný rozsah. I přesto bylo zadání kompletně splněno, takže jsem s dosaženými výsledky velmi spokojen.
Práce s literaturou Od výběru až po využití student pracoval s uvedenými literárními zdroji zcela samostatně.
Aktivita během řešení, konzultace, komunikace Student na tématu průběžně pracoval již od loňského léta a po celou tuto dobu byl v úzkém kontaktu s odborným konzultantem ze sdružení CESNET. Na konzultace byl vždy řádně připraven.
Aktivita při dokončování Technická zpráva byla dokončována na poslední chvíli, ale i tak se podařilo zrealizovat alespoň jedno kolo komentářů k její první kompletní verzi. Kromě značného rozsahu prací vyžadovaných zadáním vidím důvody pozdního dokončování především v přípravě na Lightning Talk k tématu bakalářské práce na konferenci TNC25 (viz níže), což považuji za dostatečně dobrý důvod.
Publikační činnost, ocenění Student se s tématem řešeným v bakalářské práci zapojil do Future Talent Programme organizace GÉANT, v rámci něhož byl vybrán k prezentaci 5minutového Lightning Talku na konferenci TNC25, která se koná 9.-13. 6. 2025 v anglickém Brightonu.
Navrhovaná známka
A
Body
98

Posudek oponenta

Kekely, Lukáš

Student vytvořil zajímavou implementaci řadiče XDP datových přenosů jako integrovanou součást open source softwarového vybavení FPGA akcelerační platformy NDK. Kvalitou a výkonem tato implementace nezaostává za realizacemi jiných datových rozhraní na této platformě. Praktické využití je tedy jednoduše možné. Slabším místem práce je textová zpráva, která by mohla být trochu delší a lépe zkontrolována.  Celkově navrhuji hodnocení stupněm A za 90 bodů.  

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Náročnost zadání Student musel nastudovat, navrhnout a implementovat softwarový modul na úrovni jádra operačního systému Linux. Modul navíc přímo spolupracuje se specifickou hardwarovou platformou a zajišťuje realizaci DMA přenosů dat skrze PCIe sběrnici. Nejen samotná rozsáhlá realizace, ale zejména pak ladění takovéto implementace a její podrobné testování přímo vyžadováno zadáním není jednoduché. 
Rozsah splnění požadavků zadání Student splnil všechny body zadání. Zejména navrhl a implementoval XDP řadič včetně uživatelských nástrojů, které využil pro testování a měření propustnosti přenosů dat.
Rozsah technické zprávy Text práce má jen asi 41 normostran. Celkově je sice napsaný jasně a nic zásadního v něm nechybí. Ocenil bych ale vyšší míru detail v některých částech, zejména v teoretickém rozboru a návrhu. Konkrétně, kapitola 3 popisuje celou NDK platformu jen na dvou stranách nebo kapitola 4 vysvětluje jádro návrhu implementace také jen na dvou stranách.
Prezentační úroveň technické zprávy 85 Zpráva podrobně popisuje XDP rozhraní. Pak jen stručně zmíní vlastnosti NDK platformy a samotné jádro vlastního návrhu řešení. Hlavní objem textu se pak věnuje popisu implementace jednotlivých realizačních částí a jejich testování s vyhodnocením výsledků. Pro implementační práci je popsané rozdělení rozsahu žádoucí. Avšak, jak již bylo zmíněno, rozsáhlejší text v kapitolách 3 a 4 by práci vylepšil. Celkově návaznost kapitol odpovídá bodům zadání, jednoduše se sleduje a čtenář je veden k jasným závěrům zamýšleným autorem. 
Formální úprava technické zprávy 80 Práce je napsané v angličtině na dostatečně kvalitní úrovni. Po typografické stránce bych doporučil odstranění osamocených slov na novém řádku (např. obrázky 2.1 a 2.5 v seznamu nebo první věta kapitoly 4). Z jazykové stránky bych doporučil kontrolu pravopisu a překlepů (např. rovnou nadpisy 7.1.2, 7.2.3 a 7.3.1) spolu s podrobným přečtením textu a doplněním omylem vynechaných slov (např. "For visualization, the plot of L2 speeds is chosen Figure 7.1."). Celkově takto text práce zbytečně působí dojmem dopsání na poslední chvíli bez adekvátní kontroly.
Práce s literaturou 85 Autor používá a cituje relevatní primární zdroje pro všechny potřebné technologie. Celkový počet referencí odpovídá standardu implementační bakalářské práce.
Realizační výstup 100 Výsledkem práce je implementace řadiče XDP API pro datové přenosy paketů mezi operační pamětí počítače a FPGA síťovou kartou NDK platformy. Součástí implementace jsou také uživatelské nástroje pro demonstraci použití tohoto rozhraní. Implementace byla otestována v kombinaci s cílovým hardware v podobě akceleračních síťových FPGA karet. Dosaženo je zároveň propustnosti dostatečné pro praktické vysokorychlostní nasazení na 100GbE a rychlejších sítích. Tento výkon je porovnatelný s existujícími implementacemi alternativních API datové cesty (NDP a DPDK).
Využitelnost výsledků Výsledná realizace bude součástí open source softwarového repozitáře platformy NDK, kde přidává zajímavou novou funkcionalitu. Praktické využití výsledků je možné v řešených výzkumných projektech sdružení Cesnet nebo v komerčním nasazení produktů společnosti DynaNIC. Doporučil bych také zkusit podat informaci o XDP podpoře v NDK a porovnání výkonu jednotlivých API datové cesty jako poster nebo student paper na vhodnou FPGA nebo síťovou konferenci.
Navrhovaná známka
A
Body
90

Otázky

eVSKP id 162799