Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable suballocation on Iris(R) Xe gpu #3668

Merged

Conversation

xiaopengli89
Copy link
Contributor

Checklist

  • Run cargo clippy.
  • Add change to CHANGELOG.md. See simple instructions inside file.

Connections
Close #3552

@Elabajaba
Copy link
Contributor

This technically invalidates the safety comments for the suballocated path, but I don't think that really matters.

Should probably also not create the allocator (just add an early return to the top of create_allocator_wrapper() in suballocation.rs if suballocation isn't supported).

Also should probably add a comment above each of the if !device.private_caps.suballocation_supported { blocks saying that it's a workaround for Intel Xe drivers.

@xiaopengli89
Copy link
Contributor Author

Ok.

@xiaopengli89 xiaopengli89 force-pushed the disable-suballocation-on-iris-xe branch from 91f7896 to 75eec5a Compare April 15, 2023 14:29
wgpu-hal/src/dx12/suballocation.rs Show resolved Hide resolved
wgpu-hal/src/dx12/device.rs Outdated Show resolved Hide resolved
@xiaopengli89 xiaopengli89 force-pushed the disable-suballocation-on-iris-xe branch from 8248ab3 to d0e236a Compare May 5, 2023 04:19
@xiaopengli89 xiaopengli89 force-pushed the disable-suballocation-on-iris-xe branch from 07773d7 to eba791f Compare May 16, 2023 08:35
@Elabajaba
Copy link
Contributor

I'm getting a test failure when I run this on my AMD 6800xt when I force it to use suballocation on the wgpu::wgpu-tests zero_init_texture_after_discard::discarding_depth_target_resets_texture_init_state_check_visible_on_copy_in_same_encoder test. It passes when suballocation is enabled, but it times out if it's disabled.

Does it pass that test on an Xe iGPU?

@xiaopengli89
Copy link
Contributor Author

I'm getting a test failure when I run this on my AMD 6800xt when I force it to use suballocation on the wgpu::wgpu-tests zero_init_texture_after_discard::discarding_depth_target_resets_texture_init_state_check_visible_on_copy_in_same_encoder test. It passes when suballocation is enabled, but it times out if it's disabled.

Does it pass that test on an Xe iGPU?

I ran the test on AMD Radeon(TM) Graphics with suballoction disabled and it pass wgpu::wgpu-tests zero_init_texture_after_discard::discarding_depth_target_ resets_texture_init_state_check_visible_on_copy_in_same_encoder.

But texture_arrays_non_uniform does not pass, the error is Image data mismatch! Outlier count 768 over limit 0. Max difference 255, even if suballoction is enabled, this should have nothing to do with this PR.

@xiaopengli89
Copy link
Contributor Author

All tests passed on my Intel(R) Iris(R) Xe Graphics.

Copy link
Member

@cwfitzgerald cwfitzgerald left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks so much!

@cwfitzgerald cwfitzgerald enabled auto-merge (squash) June 15, 2023 20:10
@cwfitzgerald cwfitzgerald merged commit f9fcb54 into gfx-rs:trunk Jun 15, 2023
20 checks passed
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.

Suballocation works incorrectly
3 participants