-
Notifications
You must be signed in to change notification settings - Fork 44
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
Use test-triton in CI #2183
Use test-triton in CI #2183
Conversation
A bit non-trivial thing here is a pass rate, it matches the pass rate of the original build test from here, https://github.com/intel/intel-xpu-backend-for-triton/actions/runs/10782421236
|
Pass rate does not match for rolling:
vs
|
Good catch, it seems instrumentation test does not run (though this part was not touched). Upd. Fixed https://github.com/intel/intel-xpu-backend-for-triton/actions/runs/10796253455/job/29944838112 |
We need to clarify what
|
@pbchekin regarding |
|
010fae1
to
6a57ca9
Compare
@pbchekin could you please make another review iteration? |
ensure_spirv_dis | ||
|
||
cd python/test/unit | ||
${{ env.TRITON_TEST_CMD }} --core |
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 there is no --skip-...
option as in other steps?
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.
I install pip packages at the first step and do not install them in the later steps
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.
Test dependencies are installed in a separate step: https://github.com/intel/intel-xpu-backend-for-triton/blob/llvm-target/.github/workflows/build-test-reusable.yml#L100
We can re-use scripts/requirements-test.txt
there, plus install additional dependencies required by workflow itself, sych as defusedxml
.
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.
thanks, I see now
we have to keep installation in the script for developers, this I suggest removing the correspondent CI step
Pass rate numbers do no match to the last run on llvm-target. Looks like you also need to pass the skip list to |
scripts/pass_rate.py
Outdated
@@ -72,7 +76,7 @@ def get_deselected(report_path: pathlib.Path) -> int: | |||
return len([line for line in f.readlines() if line and not line.startswith('#')]) | |||
|
|||
|
|||
def parse_report(report_path: pathlib.Path) -> ReportStats: | |||
def parse_report(report_path: pathlib.Path, skiplist_dir: str) -> ReportStats: |
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.
Use pathlib.Path
instead str
:
def parse_report(report_path: pathlib.Path, skiplist_dir: str) -> ReportStats: | |
def parse_report(report_path: pathlib.Path, skiplist_dir: pathlib.Path) -> ReportStats: |
scripts/pass_rate.py
Outdated
"""Calculates deselected (via skiplist) tests.""" | ||
skiplist_dir = os.getenv('TRITON_TEST_SKIPLIST_DIR', 'scripts/skiplist/default') | ||
skiplist_path = pathlib.Path(skiplist_dir) / f'{report_path.stem}.txt' |
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.
skiplist_path = pathlib.Path(skiplist_dir) / f'{report_path.stem}.txt' | |
skiplist_path = skiplist_dir / f'{report_path.stem}.txt' |
@@ -97,11 +97,6 @@ jobs: | |||
repository: pytorch/pytorch | |||
ref: ${{ inputs.pytorch_ref }} | |||
|
|||
- name: Install test dependencies | |||
run: | | |||
pip install pytest pytest-xdist pytest-rerunfailures pytest-select pytest-timeout expecttest defusedxml |
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 still need to install defusedxml
. It is required for pass-rate.py
.
4719ef0
to
b19caf0
Compare
Testing with |
This removes code duplication and adds regular testing of
test-triton.sh
itself