Skip to content

ci(audience): build SwiftShader Vulkan ICD for Unity 6 Linux PlayMode#763

Closed
ImmutableJeffrey wants to merge 1 commit intochore/sdk-318-linux-playmode-xvfbfrom
chore/audience-linux-perf-swiftshader
Closed

ci(audience): build SwiftShader Vulkan ICD for Unity 6 Linux PlayMode#763
ImmutableJeffrey wants to merge 1 commit intochore/sdk-318-linux-playmode-xvfbfrom
chore/audience-linux-perf-swiftshader

Conversation

@ImmutableJeffrey
Copy link
Copy Markdown
Collaborator

Summary

  • Builds SwiftShader from source inside the unityci/editor container during the playmode-linux step.
  • Sets VK_ICD_FILENAMES to the produced vk_swiftshader_icd.json so the Vulkan loader picks it.
  • Drops -force-glcore from the Unity command so Unity 6 tries Vulkan first.
  • Uploads vulkaninfo.txt for post-run engagement confirmation.

Engagement check

The Unity log's Renderer: line tells us whether SwiftShader engaged:

  • SwiftShader Device -> SwiftShader Vulkan engaged. Compare cell wall times to baseline.
  • llvmpipe (LLVM ...) -> Vulkan init still failed and Unity fell back to OpenGL. Same outcome as the closed lavapipe PR. Close this PR with the finding.

Experiment success criteria

  • Unity 6 Linux Mono cell wall time under 18 min (currently around 27 min) and vulkaninfo shows SwiftShader as the selected device. Both required.
  • If only the wall-time bar is met but Renderer is still llvmpipe, the speedup is from something incidental and we close.

🤖 Generated with Claude Code

@ImmutableJeffrey
Copy link
Copy Markdown
Collaborator Author

Closing without merging. Two issues: (1) plan bug - apostrophe in 'Google's CPU Vulkan ICD' comment terminated the docker bash -c '...' single-quoted heredoc, exit code 2 in 5 sec. (2) Even with the build fixed, profile data on PR #764 shows the Unity 6 bottleneck is per-frame UI Toolkit cost on software rendering, not the rasteriser choice. Software Vulkan via SwiftShader would not have moved the needle. Pursuing a different fix in a new PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant