-
Notifications
You must be signed in to change notification settings - Fork 804
[ET-VK][testing] Fix qdq8ta_conv2d_activations test failures via configurable shader filtering #16402
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
Conversation
…igurable shader filtering The qdq8ta_conv2d_activations correctness tests were failing because the GPU timing collection function was filtering out quantize_and_pack_4w4c and unpack_4w4c_and_dequantize shaders from timing measurements. For these tests, these shaders ARE the operations being tested, not overhead. This change refactors shader filtering to be configurable per test case: - Added shader_filter member to TestCase class with getter/setter methods - Created kDefaultShaderFilter (filters layout conversions + quantization) for backward compatibility - Created kLayoutOnlyShaderFilter (filters only layout conversions) for tests where quantization is the primary operation - Updated collect_gpu_timing_us() to accept shader_filter parameter - Updated qdq8ta_conv2d_activations to use kLayoutOnlyShaderFilter This allows tests to control what shaders are excluded from timing measurements based on what they're actually testing, while maintaining backward compatibility for all existing tests. Differential Revision: [D89832383](https://our.internmc.facebook.com/intern/diff/D89832383/) [ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/16402
Note: Links to docs will display an error until the docs builds have been completed. ❗ 1 Active SEVsThere are 1 currently active SEVs. If your PR is affected, please view them below: ❌ 3 New Failures, 3 Pending, 1 Unrelated FailureAs of commit 860eb6f with merge base 0dfda64 ( NEW FAILURES - The following jobs have failed:
UNSTABLE - The following job is marked as unstable, possibly due to flakiness on trunk:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
…es via configurable shader filtering" The qdq8ta_conv2d_activations correctness tests were failing because the GPU timing collection function was filtering out quantize_and_pack_4w4c and unpack_4w4c_and_dequantize shaders from timing measurements. For these tests, these shaders ARE the operations being tested, not overhead. This change refactors shader filtering to be configurable per test case: - Added shader_filter member to TestCase class with getter/setter methods - Created kDefaultShaderFilter (filters layout conversions + quantization) for backward compatibility - Created kLayoutOnlyShaderFilter (filters only layout conversions) for tests where quantization is the primary operation - Updated collect_gpu_timing_us() to accept shader_filter parameter - Updated qdq8ta_conv2d_activations to use kLayoutOnlyShaderFilter This allows tests to control what shaders are excluded from timing measurements based on what they're actually testing, while maintaining backward compatibility for all existing tests. Differential Revision: [D89832383](https://our.internmc.facebook.com/intern/diff/D89832383/) [ghstack-poisoned]
39b6ddf
into
gh/SS-JIA/387/base
Stack from ghstack (oldest at bottom):
The qdq8ta_conv2d_activations correctness tests were failing because the GPU timing collection function was filtering out quantize_and_pack_4w4c and unpack_4w4c_and_dequantize shaders from timing measurements. For these tests, these shaders ARE the operations being tested, not overhead.
This change refactors shader filtering to be configurable per test case:
This allows tests to control what shaders are excluded from timing measurements based on what they're actually testing, while maintaining backward compatibility for all existing tests.
Differential Revision: D89832383