← Terug
Nieuw open-source systeem ontsluit assemblage van NVIDIA GPU-machinecode

Nieuw open-source systeem ontsluit assemblage van NVIDIA GPU-machinecode

Ontwikkelaars en onderzoekers die werken met hoogwaardige GPU's voor data-centra stuiten vaak op een gebrek aan publieke tooling voor het aanpassen van machinecode. Hoewel NVIDIA een disassembler beschikbaar stelt voor SASS (Streaming Assembler), ontbreekt een openbare assembler voor de meest recente generaties chips. Om deze barrière te doorbreken, heeft onderzoeker Jiading Gai een nieuw systeem ontwikkeld genaamd F2Asm.

Het systeem is in staat om exacte encoders voor SASS-instructies te leren, waardoor het mogelijk wordt om gecontroleerde wijzigingen aan te brengen in de machinecode. Volgens een arxiv.org benadert F2Asm deze instructie-encoders als vector-waardige affiene afbeeldingen over het lichaam $\mathbb{F}_2$. Dit is de eerste keer dat een dergelijke methodiek wordt toegepast om SASS-encoders te reconstrueren.

Technische werking van F2Asm

De werking van F2Asm is gebaseerd op lineaire algebra. Het systeem analyseert paren van originele CUBIN-instructiewoorden en de bijbehorende gedisassembleerde code om exacte 128-bits encoders te leren. Hierbij wordt gebruikgemaakt van Gauss-eliminatie om een compacte basis op te bouwen. Dit proces stelt de tool in staat om inconsistenties in de data te detecteren en invoer die buiten het geleerde bereik valt, systematisch te weigeren.

Een cruciaal aspect van het algoritme is de strikte scheiding tussen het leerproces en andere elementen. Zo worden CUBIN-metadata, relocatieregels en doelspecifieke controlebits apart behandeld, wat de nauwkeurigheid van de reconstructie ten goede komt. De effectiviteit van deze aanpak is bevestigd via 'round-trip' tests, waarbij gedisassembleerde code opnieuw werd geassembleerd. De resultaten toonden aan dat de uitvoerbare tekstsecties exact overeenkwamen met de originele bestanden, zoals beschreven in het .

Ondersteuning voor moderne architecturen

F2Asm is getest op diverse actuele NVIDIA-architecturen. De training van de encoders omvatte modellen uit de Hopper-serie (SM90 en SM90a), de Blackwell-serie (SM100) en de Rubin-serie (SM107). Voor het trainen van deze modellen is een dataset van 3.225 CUBINs gebruikt. Deze data zijn verzameld uit diverse bronnen, waaronder officiële bibliotheken van NVIDIA, CUDA 13.3-pakketten en archieven uit de CUDA 13.4 Developer Preview, aldus de .

Met de introductie van F2Asm is er voor het eerst een open-source assembler beschikbaar voor de Rubin SM107. Dit opent nieuwe wegen voor het optimaliseren van machinecode en het onafhankelijk begrijpen van de werking van moderne GPU-architecturen, zonder dat men volledig afhankelijk is van de propriëtaire software van de fabrikant.

Context en marktpositie

De publicatie van dit onderzoek op 20 augustus 2026 markeert een belangrijke stap richting meer transparantie in GPU-instructiesets. Terwijl NVIDIA een dominante marktpositie behoudt, wat onder meer te zien is in de yahoo.com, zorgen open-source initiatieven zoals F2Asm voor meer onafhankelijke controle over de efficiëntie van hardware.

De methodiek achter F2Asm is potentieel uitbreidbaar naar toekomstige GPU-iteraties. De enige voorwaarde hiervoor is de beschikbaarheid van voldoende gepaarde data van CUBIN-instructies en hun disassembly. Hiermee biedt het systeem een duurzaam kader voor onderzoekers om de grenzen van hardware-optimalisatie verder te verkennen.

Geraadpleegde bronnen
Lees origineel artikel — Nieuws
Waardering
0
Stem mee op dit artikel
Discussie
Nog geen reacties. Wees de eerste!