amber
amber copied to clipboard
SwiftShader emits warnings (and so fails tests) due to subgroup size control
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.
@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?
@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.
SGTM.