KFD (Kernel Fusion Driver) jest kluczowym elementem architektury HSA (Heterogeneous System Architecture), która została zaprojektowana przez firmę AMD.
KFD jest częścią otwartego sterownika graficznego amdgpu dla systemu Linux i odgrywa istotną rolę w obsłudze heterogenicznych obliczeń na nowoczesnych procesorach AMD.
KFD to sterownik jądra Linux, który zarządza komponentami GPU w kontekście HSA. Jego główne zadania obejmują:
KFD obsługuje tylko niektóre modele kart graficznych AMD, które spełniają wymagania HSA. Są to głównie nowsze karty, oparte na architekturach takich jak GCN (Graphics Core Next) oraz RDNA (Radeon DNA). Starsze modele, takie jak OLAND, mogą nie być wspierane przez KFD, co system Linux komunikuje:
kfd : amdgpu : OLAND not supported in kfd
HSA (Heterogeneous System Architecture) to inicjatywa, która ma na celu zbliżenie do siebie procesorów głównych (CPU) i procesorów graficznych (GPU), aby mogły współpracować bardziej efektywnie. Tradycyjnie, CPU i GPU miały swoje własne przestrzenie adresowe pamięci, co wymagało kopiowania danych między nimi, co zwiększało narzut operacyjny. HSA stara się to uprościć, umożliwiając bezpośrednie współdzielenie pamięci i lepszą synchronizację między CPU a GPU.