amber icon indicating copy to clipboard operation
amber copied to clipboard

SwiftShader emits warnings (and so fails tests) due to subgroup size control

Open ben-clayton opened this issue 5 years ago • 3 comments

https://github.com/google/amber/pull/913 failed presubmits because it rolls SwiftShader forward, and SwiftShader now emits a waning to stdout about VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT structures being passed to vkGetPhysicalDeviceFeatures2() when the VK_EXT_subgroup_size_control extension is not supported. This should be ignored by drivers, but the stdout message is treated as a test failure.

To work around this for the time being, I've landed a change into SwiftShader that can adjust the logging level. We can use this to raise the logging level to only errors and fatal messages.

We might want to consider only passing VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT queries if VK_EXT_subgroup_size_control is actually reported as supported by the driver.

See b/169966461 for more context.

ben-clayton avatar Oct 05 '20 13:10 ben-clayton

@paulthomson we should fixup the subgroup setup code to only happen if the extension is supported.

@ben-clayton we build swiftshader Debug because ... I didn't think about it and just inherit the build settings from the outer project. Can we change the subproject to build Release for swiftshader, but leave the outer cmake building Debug?

dj2 avatar Oct 05 '20 14:10 dj2

@ben-clayton we build swiftshader Debug because ... I didn't think about it and just inherit the build settings from the outer project. Can we change the subproject to build Release for swiftshader, but leave the outer cmake building Debug?

We could, but I still believe that building debug is a Good Thing™ for more exercising of ASSERT()s and debug-only code paths.

ben-clayton avatar Oct 05 '20 14:10 ben-clayton

SGTM.

dj2 avatar Oct 05 '20 14:10 dj2