Repository navigation
Arm backend: expect int8 cat under EXT-INT64 to delegate after to_edge promotes it - #24628
shoumikhin wants to merge 1 commit into
Conversation
…e promotes it test_int64_extension_partition_tosa_INT[cat_byte] fails on main. to_edge now casts a mixed-dtype cat's narrower operands to the result dtype, so the int8 input reaches the partitioner already cast to int64, the cast stays on the CPU, and the all-int64 cat delegates. The test still expected the int8 operand to keep cat off the delegate. Test plan: test_int64.py and test_tosa_operator_support.py pass.
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/24628
Note: Links to docs will display an error until the docs builds have been completed. ⏳ No Failures, 8 PendingAs of commit 4388f95 with merge base c7f7931 ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
@claude /pr-review |
|
Claude finished @shoumikhin's task in 8m 51s —— View job The Detailed reviewPR Review: #24628Summary
Testing
Code Quality
RecommendationRequest Changes The flip alone unblocks main, but it drops the coverage that the suite's own header describes. The fix is one extra case and moving one comment, both in the same file. Review tasks
|
|
Thanks, yours is the better fix since it keeps what the test is meant to check. Closing this one in favor of #24621. |
Summary
test_int64_extension_partition_tosa_INT[cat_byte]fails on main in the Arm TOSA tests.Two changes met on main. #24381 changed
to_edgeso that acatwith mixed dtypes casts its narrower inputs to the result dtype. #24306 added thecat_bytecase, which joins an int64 tensor with an int8 tensor and expects nothing to be delegated. Its CI ran on a base from before #24381.After #24381, the int8 input reaches the partitioner already cast to int64. The cast stays on the CPU, and the
catnow sees only int64 inputs, so the partitioner delegates it. That is correct under the int64 extension, so this change expects 1 delegate forcat_byteand adds a short comment saying why.@abm-77, could you confirm this matches what you meant the case to check? If you want to keep a case where a narrow input blocks delegation, it needs an op that
to_edgedoes not promote. I am happy to change it that way instead.Test plan
Ran
backends/arm/test/misc/test_int64.pyandbackends/arm/test/misc/test_tosa_operator_support.py: all pass. Without this change,cat_bytefails with the same error as on main.cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils @Sebastian-Larsson @robell @rascani