LL perf (Textures/assets): Decode pool has no priority and no cancellation #307

Closed
opened 2026-10-04 14:09:15 +00:00 by sky_line · 0 comments
Owner

From the LL-origin inefficiency audit (finding T15). File/line references are from commit 0229f8872c; re-locate them before working.

Decode pool has no priority and no cancellation

  • Where:
    • FIFO pool of 8 (llimageworker.cpp:74-106).
    • "Queue doesn't support canceling" (lltexturefetch.cpp:2405).
    • redundant_load discards finished decodes (llviewertexturelist.cpp:1109-1117).
    • An aux-channel request runs a second full OpenJPEG decode (llimageworker.cpp:215-231, llimagej2coj.cpp:332).
  • Fix: priority queue; generation/cancel flag checked before decode; decode all channels once.
  • Confirmed. M.

Verify the cost (profile or timer) before and after changing it.

From the LL-origin inefficiency audit (finding T15). File/line references are from commit 0229f8872c; re-locate them before working. **Decode pool has no priority and no cancellation** - **Where:** - FIFO pool of 8 (`llimageworker.cpp:74-106`). - "Queue doesn't support canceling" (`lltexturefetch.cpp:2405`). - `redundant_load` discards finished decodes (`llviewertexturelist.cpp:1109-1117`). - An aux-channel request runs a second full OpenJPEG decode (`llimageworker.cpp:215-231`, `llimagej2coj.cpp:332`). - **Fix:** priority queue; generation/cancel flag checked before decode; decode all channels once. - Confirmed. M. Verify the cost (profile or timer) before and after changing it.
sky_line added this to the Slipstream project 2026-10-06 15:04:13 +00:00
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
sky_line/Slipstream#307
No description provided.