-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
[Hexagon]Use requires_hexagon instead of requires_hexagon_toolchain if running on hexagon target #11294
Conversation
@requires_hexagon_toolchain | ||
def test_speedup(hexagon_session, capsys): | ||
@tvm.testing.requires_hexagon | ||
def test_speedup(hexagon_session: Session, capsys): | ||
if hexagon_session is None: |
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.
Since hexagon_session
will be non-null whenever ANDROID_SERIAL_NUMBER
is set, and tvm.testing.requires_hexagon
requires that ANDROID_SERIAL_NUMBER
is set, should we also use this to remove the if hexagon_session is None
checks?
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.
make sense, removed the if condition.
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! One question for clean-ups made possible by this change, which could go in this or a future PR.
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.
Though, double-checking the test results themselves, it looks like the tests are being skipped in CI. (example link). We should investigate why these are being skipped.
At first glance, nothing is obviously standing out as the cause of the skipped CI tests. The |
34d32e6
to
d229814
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.
@Lunderberg thanks for the review. The issue was the is_enabled
condition which I forgot to change correctly. Not it is fixed:
is_enabled = tvm.support.libinfo()["USE_HEXAGON"].lower() in ["on", "true", "1"]
@requires_hexagon_toolchain | ||
def test_speedup(hexagon_session, capsys): | ||
@tvm.testing.requires_hexagon | ||
def test_speedup(hexagon_session: Session, capsys): | ||
if hexagon_session is None: |
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.
make sense, removed the if condition.
testing on hardware CI to see how many test are failing there. |
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, and I've confirmed that the tests are running on the CI. Some are marked as "unconditional skip", but those are tests being run on a different shard. I've left it approved and ready to merge based on your hardware tests.
Hardware test passes and I don't see any skip for Hexagon target. Only one test failed:
We should investigate that in a follow up PR. |
…f running on hexagon target (apache#11294) * refactor requires_hexagon_toolchain * trigger * lint
These were enabled in apache#11294, then erroneously disabled in apache#11313. This applies the same fix as in apache#11294, checking the `ANDROID_SERIAL_NUMBER` to determine if Hexagon tests can execute at runtime, but using the refactored `pytest.skipif` messages introduced in apache#11313.
These were enabled in apache#11294, then erroneously disabled in apache#11313. This applies the same fix as in apache#11294, checking the `ANDROID_SERIAL_NUMBER` to determine if Hexagon tests can execute at runtime, but using the refactored `pytest.skipif` messages introduced in apache#11313.
* [Hexagon][CI] Re-enable Hexagon tests in CI These were enabled in #11294, then erroneously disabled in #11313. This applies the same fix as in #11294, checking the `ANDROID_SERIAL_NUMBER` to determine if Hexagon tests can execute at runtime, but using the refactored `pytest.skipif` messages introduced in #11313. * Fixed circular dependency, but feels somewhat ugly
* [Hexagon][CI] Re-enable Hexagon tests in CI These were enabled in apache#11294, then erroneously disabled in apache#11313. This applies the same fix as in apache#11294, checking the `ANDROID_SERIAL_NUMBER` to determine if Hexagon tests can execute at runtime, but using the refactored `pytest.skipif` messages introduced in apache#11313. * Fixed circular dependency, but feels somewhat ugly
We use
requires_hexagon
test fixture when we want to run on hexagon target.requires_hexagon_toolchain
is used only for cases where we want to build it but not running it.