@@ -201,57 +201,57 @@ So even though Vulkan is the transport mechanism, the real architectural center
201201
202202``` mermaid
203203flowchart TD
204- A[Application / GGML frontend] --> B[Vulkan backend API]
205- B --> B1[Init backend by device index]
206- B --> B2[Query device count / description / memory]
207- B --> B3[Get Vulkan buffer type]
208- B --> B4[Get pinned host buffer type]
209-
210- B --> C[GGML backend registry]
211- C --> D[Vulkan device runtime]
212-
213- D --> D1[Physical device + logical device]
214- D --> D2[Vendor / driver / architecture classification]
215- D --> D3[Capability flags]
216- D --> D4[Queue topology]
217- D --> D5[Descriptor set layout]
218- D --> D6[Pipeline collections]
219- D --> D7[Fence + staging resources]
220- D --> D8[Pinned host memory tracking]
221-
222- D3 --> E1[FP16 / BF16]
223- D3 --> E2[Integer dot product]
224- D3 --> E3[Subgroup operations]
225- D3 --> E4[Cooperative matrix support]
226- D3 --> E5[UMA / host-memory preference]
227-
228- F[Shader sources (*.comp)] --> G[glslc + vulkan-shaders-gen]
229- G --> H[Generated shader header]
230- G --> I[Generated per-shader C++ sources]
231-
232- H --> J[Shader modules]
204+ A[" Application / GGML frontend" ] --> B[" Vulkan backend API" ]
205+ B --> B1[" Init backend by device index" ]
206+ B --> B2[" Query device count / description / memory" ]
207+ B --> B3[" Get Vulkan buffer type" ]
208+ B --> B4[" Get pinned host buffer type" ]
209+
210+ B --> C[" GGML backend registry" ]
211+ C --> D[" Vulkan device runtime" ]
212+
213+ D --> D1[" Physical device + logical device" ]
214+ D --> D2[" Vendor / driver / architecture classification" ]
215+ D --> D3[" Capability flags" ]
216+ D --> D4[" Queue topology" ]
217+ D --> D5[" Descriptor set layout" ]
218+ D --> D6[" Pipeline collections" ]
219+ D --> D7[" Fence + staging resources" ]
220+ D --> D8[" Pinned host memory tracking" ]
221+
222+ D3 --> E1[" FP16 / BF16" ]
223+ D3 --> E2[" Integer dot product" ]
224+ D3 --> E3[" Subgroup operations" ]
225+ D3 --> E4[" Cooperative matrix support" ]
226+ D3 --> E5[" UMA / host-memory preference" ]
227+
228+ F[" Shader sources (*.comp)" ] --> G[" glslc + vulkan-shaders-gen" ]
229+ G --> H[" Generated shader header" ]
230+ G --> I[" Generated per-shader C++ sources" ]
231+
232+ H --> J[" Shader modules" ]
233233 I --> J
234- J --> K[Compute pipelines]
235-
236- K --> K1[Generic operator pipelines]
237- K --> K2[Matmul pipelines]
238- K --> K3[Dequant + matmul pipelines]
239- K --> K4[Vendor / feature-specific variants]
240-
241- D --> L[Buffer system]
242- L --> L1[Device-local Vulkan buffers]
243- L --> L2[Pinned host buffers]
244- L --> L3[Subbuffers / views]
245-
246- D --> M[Queue + command subsystem]
247- M --> M1[Compute queue]
248- M --> M2[Transfer queue]
249- M --> M3[Command pools]
250- M --> M4[Command buffers]
251- M --> M5[Submission + synchronization]
252-
253- A --> N[GGML computation graph]
254- N --> O[Vulkan graph execution]
234+ J --> K[" Compute pipelines" ]
235+
236+ K --> K1[" Generic operator pipelines" ]
237+ K --> K2[" Matmul pipelines" ]
238+ K --> K3[" Dequant + matmul pipelines" ]
239+ K --> K4[" Vendor / feature-specific variants" ]
240+
241+ D --> L[" Buffer system" ]
242+ L --> L1[" Device-local Vulkan buffers" ]
243+ L --> L2[" Pinned host buffers" ]
244+ L --> L3[" Subbuffers / views" ]
245+
246+ D --> M[" Queue + command subsystem" ]
247+ M --> M1[" Compute queue" ]
248+ M --> M2[" Transfer queue" ]
249+ M --> M3[" Command pools" ]
250+ M --> M4[" Command buffers" ]
251+ M --> M5[" Submission + synchronization" ]
252+
253+ A --> N[" GGML computation graph" ]
254+ N --> O[" Vulkan graph execution" ]
255255 O --> K
256256 O --> L
257257 O --> M
0 commit comments