Skip to content

Fix 8-bit storage nearly always using the UniformAndStorageBuffer8BitAccess capability.#1542

Merged
johnkslang merged 1 commit intoKhronosGroup:masterfrom
sheredom:fix_8bit_storagebuffer
Oct 26, 2018
Merged

Fix 8-bit storage nearly always using the UniformAndStorageBuffer8BitAccess capability.#1542
johnkslang merged 1 commit intoKhronosGroup:masterfrom
sheredom:fix_8bit_storagebuffer

Conversation

@sheredom
Copy link
Copy Markdown

When using the 8-bit storage extension it basically always used the
UniformAndStorageBuffer8BitAccess capability, even in cases where it
wasn't required. For instance if we are targeting Vulkan 1.1 (SPIR-V 1.3
or higher), and we are only using 8-bit types in an SSBO, we only need
the StorageBuffer8BitAccess capability.

I fixed this by enabling storage buffer use in Vulkan 1.1 / SPIR-V 1.3
or higher, and then changing the logic to match.

I also added some tests that will output different capabilities when run
on Vulkan 1.0 and 1.1, thus they are added twice to the test list (one
for each version).

Fixes #1539

@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Oct 23, 2018

CLA assistant check
All committers have signed the CLA.

@johnkslang
Copy link
Copy Markdown
Contributor

The bots seem to have a legitimate failure: It looks like the results from runtests were not updated. Use

runtests
bump

To update those tests (assuming the changes are valid).

UniformAndStorageBuffer8BitAccess capability.

When using the 8-bit storage extension it basically always used the
`UniformAndStorageBuffer8BitAccess` capability, even in cases where it
wasn't required. For instance if we are targeting Vulkan 1.1 (SPIR-V 1.3
or higher), and we are only using 8-bit types in an SSBO, we only need
the `StorageBuffer8BitAccess` capability.

I fixed this by enabling storage buffer use in Vulkan 1.1 / SPIR-V 1.3
or higher, and then changing the logic to match.

I also added some tests that will output different capabilities when run
on Vulkan 1.0 and 1.1, thus they are added twice to the test list (one
for each version).

Fixes #1539
@sheredom
Copy link
Copy Markdown
Author

So the appveyor thing looks bogus to me - lot of errors in gtest?! Dunno if I inadvertently caused these or not... 😢

@johnkslang
Copy link
Copy Markdown
Contributor

No, you did not cause the gtest errors. I'm temporarily accepting PRs that fail for only that reason.

@sheredom
Copy link
Copy Markdown
Author

Ok ok - I think that is the only error then!

@johnkslang johnkslang merged commit 25ed3fc into KhronosGroup:master Oct 26, 2018
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.

Reading uint8_t from storage buffers adds (unnecessarily) UniformAndStorageBuffer8BitAccess capability

3 participants