[perf][LOW] No VkPipelineCache passed to vkCreateComputePipelines #69

Closed
opened 2026-06-16 16:51:35 +02:00 by jorijnvdgraaf · 0 comments

Subsystem: ComputeShader / RT pipeline
Location: implementations/Crafter.Graphics-ComputeShader.cpp:84-86 (mirrored interfaces/Crafter.Graphics-PipelineRTVulkan.cppm:85)
Impact: Low (cold-start) · Effort: Small · Not hot path (one-time compile)

Problem

No VkPipelineCache passed to vkCreateComputePipelines. One-time pipeline compilation (4 UI shaders + user shaders), not frame cost.

Proposed fix

One inline static VkPipelineCache in Device, loaded from disk and serialized at shutdown; validate against pipelineCacheUUID before reuse.

Note

The original title's vkCreateShaderModule mention is inaccurate — that API takes no cache argument.

**Subsystem:** ComputeShader / RT pipeline **Location:** `implementations/Crafter.Graphics-ComputeShader.cpp:84-86` (mirrored `interfaces/Crafter.Graphics-PipelineRTVulkan.cppm:85`) **Impact:** Low (cold-start) · **Effort:** Small · Not hot path (one-time compile) ### Problem No `VkPipelineCache` passed to `vkCreateComputePipelines`. One-time pipeline compilation (4 UI shaders + user shaders), not frame cost. ### Proposed fix One `inline static VkPipelineCache` in `Device`, loaded from disk and serialized at shutdown; validate against `pipelineCacheUUID` before reuse. ### Note The original title's `vkCreateShaderModule` mention is inaccurate — that API takes no cache argument.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Catcrafts/Crafter.Graphics#69
No description provided.