-
Notifications
You must be signed in to change notification settings - Fork 44
Implement performance checking script: i8 vs f16 non-fused conv kernels #1727
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
Codecov ReportAll modified and coverable lines are covered by tests ✅ Additional details and impacted files@@ Coverage Diff @@
## develop #1727 +/- ##
===========================================
- Coverage 78.52% 77.99% -0.52%
===========================================
Files 100 100
Lines 29907 30057 +150
Branches 4452 4656 +204
===========================================
- Hits 23482 23442 -40
- Misses 4590 4601 +11
- Partials 1835 2014 +179
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
6fe114d
to
896b225
Compare
896b225
to
dad50ef
Compare
Signed-off-by: Djordje Antic <[email protected]>
Signed-off-by: Djordje Antic <[email protected]>
45fd26f
to
520da0c
Compare
Signed-off-by: Djordje Antic <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a shell script to benchmark and compare FP16 vs INT8 performance for non-fused convolution kernels.
- Adds
perf-test-i8-f16-conv.sh
to compile, time, and record average runtimes for both data types. - Supports configurable model name, ONNX path, and iteration count via flags.
- Outputs results into a directory named after the model with a
times
summary file.
Comments suppressed due to low confidence (1)
mlir/utils/performance/perf-test-i8-f16-conv.sh:5
- The usage comment references
/performance-checking
instead of this script's actual name (perf-test-i8-f16-conv.sh
); updating it will avoid confusion.
# Usage: /performance-checking --d <model> --p <model_path> [--r <number_of_iterations>]"
Signed-off-by: Djordje Antic <[email protected]>
total_time=0 | ||
|
||
compiled="$testcase.mxdb" | ||
migraphx-driver compile "$testcase" --mlir -o "$compiled" > /dev/null |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why this script is in rocMLIR ? Looks like better place is inside migraphx-benchmark-utils
https://github.com/ROCm/migraphx-benchmark-utils
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
On MLIR Standup (in january) we talked to put it in /mlir/utils/performance. But I agree with what you have said. Should I open PR there and put this script then? @umangyadav
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And would it be in this directory: https://github.com/ROCm/migraphx-benchmark-utils/tree/main/scripts and to add it to readme table? @umangyadav
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can close this one
Merged on migraphx-benchmark-utils repo - https://github.com/ROCm/migraphx-benchmark-utils/pull/70 |
Implement shell script that captures the performance difference between data types to validate expected kernel performance.
Resolves ROCm/rocMLIR-internal#1674