Skip to content

vkconfig: Add layer manifest validation multithreading - #2720

Closed
herlience wants to merge 3 commits into
LunarG:mainfrom
herlience:add-layer-manifest-validation-multithreading
Closed

herlience wants to merge 3 commits into
LunarG:mainfrom
herlience:add-layer-manifest-validation-multithreading

Conversation

@herlience

Copy link
Copy Markdown
Contributor

Fixes #2659

Splits manifest loading into a parallel parse phase (file read +
JSON parse) and a sequential apply phase (validation + inserting
into available_layers), since the latter touches shared state.

Added:

  • ParseLayerFile(): reads a manifest file and parses its JSON.
    No shared state, so safe to run on multiple threads at once.
  • ApplyParsedLayer(): takes already-parsed JSON, validates it,
    and inserts/updates it in available_layers. Kept sequential
    because it mutates shared data and depends on ordering.

Removed:

  • LoadLayers(): did file read + parse + validate + insert all
    in one function, entirely sequentially. Replaced by the two
    functions above so the expensive I/O/parse part can run in
    parallel.

Due to Qt update (>=6.9.3), the workaround for the Windows ARM release notification crash is no longer needed.
Splits manifest loading into a parallel parse phase (file read +
JSON parse) and a sequential apply phase (validation + inserting
into available_layers), since the latter touches shared state.

Added:
- ParseLayerFile(): reads a manifest file and parses its JSON.
  No shared state, so safe to run on multiple threads at once.
- ApplyParsedLayer(): takes already-parsed JSON, validates it,
  and inserts/updates it in available_layers. Kept sequential
  because it mutates shared data and depends on ordering.

Removed:
- LoadLayers(): did file read + parse + validate + insert all
  in one function, entirely sequentially. Replaced by the two
  functions above so the expensive I/O/parse part can run in
  parallel.
@ci-tester-lunarg

Copy link
Copy Markdown

Author herlience not on autobuild list. Waiting for curator authorization before starting CI build.

@ci-tester-lunarg

Copy link
Copy Markdown

Author herlience not on autobuild list. Waiting for curator authorization before starting CI build.

@herlience herlience closed this Sep 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

vkconfig: Add layer manifest validation multithreading

2 participants