-
Notifications
You must be signed in to change notification settings - Fork 9
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
Generate and update models ops tests and reimplement the models ops test failure updation script #1234
Conversation
fbea0ab
to
81d6bc2
Compare
|
2 similar comments
|
|
81d6bc2
to
9b8dd52
Compare
|
3 similar comments
|
|
|
10d85ec
to
02b119d
Compare
|
d481e6e
to
4a493d3
Compare
|
2 similar comments
|
|
4a493d3
to
ea137a0
Compare
|
3 similar comments
|
|
|
|
3 similar comments
|
|
|
f5af55f
to
df1f1f5
Compare
|
|
|
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.
Looks good!
General comment, let's see to create documentation for this one as well. Logic for generating model tests, collecting those data, etc. becomes more and more complex. It'll be good to have a robust documentation on this set of features.
Can you make a proposal how you would stracture doc? No need to have details for proposal. Let's agree on initial structure before we proceed further.
Note: Doc isn't major priority, let's finilize current efforts before we tackle with docs.
@nvukobratTT Created issue for documenting this ops test feature which also contains doc structure |
612daa8
to
a1fcd29
Compare
|
1 similar comment
|
|
1 similar comment
|
… reshape ops test due to segmentation fault in CI
a1fcd29
to
264b3a8
Compare
|
1 similar comment
|
|
1 similar comment
|
Summary:
The
scripts/model_analysis/models_ops_test_failure_update.py
script automates the extraction of detailed test failure information from pytest logs by identifying test cases along with their statuses (FAILED, XFAIL, or SKIP) and corresponding error messages, then compiles this data into a comprehensive Excel report with columns for test cases, marker statuses, and reasons. This report enables users to manually refine error messages by updating the "Reason" column, and once revised, the script can be rerun using the--use_report
option with thereport file path
to automatically update the model ops test files with marker and more descriptive failure messagesIndexError: index 563 is out of bounds for dimension 0 with size 448
) in evaluation. The adv_index ops takes two inputs one is reference tensor and other is indicies tensor based upon the indicies tensor values will pick the reference tensor in respective dim but the indicies values exceeds the range of reference tensor. To resolve these issue, added pytest param max_int which will be used by the create_from_shape method in forge/forge/tensor.py to generate the indices tensor values with the range of the reference tensorProcess:
Triggered the nightly models ops pipeline for collecting the pytest logs
Pipeline: https://github.com/tenstorrent/tt-forge-fe/actions/runs/13536357567
Collected logs:
test-log-n150-1
test-log-n150-2
test-log-n150-3
test-log-n150-4
Using the collected pytest logs, generated excel report by using
scripts/model_analysis/models_ops_test_failure_update.py
scriptCommand:
python scripts/model_analysis/models_ops_test_failure_update.py --log_files ci_logs/pytest_1.log ci_logs/pytest_2.log ci_logs/pytest_3.log ci_logs/pytest_4.log
Generated models ops test report:
model_ops_tests_report.xlsx
Anlalyzed the excel report and update the models ops tests with xfail marker and failure reason by using the
scripts/model_analysis/models_ops_test_failure_update.py
script withuse_report
option enabledCommand:
python scripts/model_analysis/models_ops_test_failure_update.py --report_file_path model_ops_tests_report.xlsx --use_report
Triggered the nightly models ops pipeline and all the test are passed.
Pipeline: https://github.com/tenstorrent/tt-forge-fe/actions/runs/13540060061
Note:
This models ops test takes around 2hrs to run in push pipeline, so created a separate workflow to run this model ops test- #1316. So renamed the model ops test marker from
push
tonightly_models_ops