[perf][LOW] Compressed-asset Update re-Resizes both staging buffers every call #71

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

Subsystem: Image pipeline (compressed assets)
Location: interfaces/Crafter.Graphics-ImageVulkan.cppm:186-205
Impact: Low · Effort: Small · Not hot path (each caller invokes once at setup)

Problem

Compressed-asset Update re-Resizes both staging buffers every call. Every shipped caller invokes it once at setup; the streaming scenario is hypothetical.

Proposed fix

Grow-only reuse.

Correctness caveat

Must keep the MEMORY_DECOMPRESSION flag gated on Device::memoryDecompressionSupported, and does not by itself make streaming safe (still needs fence/double-buffer).

**Subsystem:** Image pipeline (compressed assets) **Location:** `interfaces/Crafter.Graphics-ImageVulkan.cppm:186-205` **Impact:** Low · **Effort:** Small · Not hot path (each caller invokes once at setup) ### Problem Compressed-asset `Update` re-Resizes both staging buffers every call. Every shipped caller invokes it **once** at setup; the streaming scenario is hypothetical. ### Proposed fix Grow-only reuse. ### Correctness caveat Must keep the `MEMORY_DECOMPRESSION` flag gated on `Device::memoryDecompressionSupported`, and does not by itself make streaming safe (still needs fence/double-buffer).
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#71
No description provided.