Skip to content
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

Regenerate .mlirbc files for tests and benchmarks after LLVM integrate #17330 #17344

Open
bjacob opened this issue May 10, 2024 · 7 comments
Open

Comments

@bjacob
Copy link
Contributor

bjacob commented May 10, 2024

Summary of what happened:

This issue is about re-enabling these tests. First, all these .mlirbc files need to be re-generated with tools rebuilt after llvm/llvm-project#90040.

bjacob added a commit to bjacob/iree that referenced this issue May 10, 2024
@bjacob bjacob changed the title Regenerate .mlirbc files in e2e tests/benchmarks disabled in LLVM integrate#17330 Regenerate .mlirbc files in e2e tests/benchmarks disabled in LLVM integrate #17330 May 10, 2024
ScottTodd added a commit that referenced this issue May 10, 2024
…800a3 (#17330)

* torch-mlir integrated at bce800a.
* llvm-project integrated at 2083e97e plus local changes:
* Reverted llvm/llvm-project#89131 locally:
while this change is good in its own right, the `vector.interleave` that
it generates (instead of `vector.shuffle`) are not handled by some GPU
codegen lowerings.
        * Filed #17346.
* Cherry-picked Bazel build fix:
llvm/llvm-project#91654
* Several e2e tests have been temporarily disabled, follow-up work is
needed to reenable them: #17344

---------

Co-authored-by: MaheshRavishankar <[email protected]>
Co-authored-by: Scott Todd <[email protected]>
@ScottTodd
Copy link
Member

ScottTodd commented May 10, 2024

was a compatibility-breaking change to this op. The MLIR bytecode format version was not bumped

That's expected. The bytecode format version is not tied to any particular dialect, and the tensor dialect makes no guarantees about its format or ops (unlike, say, VHLO from StableHLO). We've been fairly lucky recently in avoiding similar breaks.

@ScottTodd
Copy link
Member

I tried to regenerate the .mlirbc files for https://github.com/nod-ai/SHARK-TestSuite/tree/main/iree_tests/pytorch/models/resnet50 and https://github.com/nod-ai/SHARK-TestSuite/tree/main/iree_tests/pytorch/models/opt-125M, but hit issues with both. Need to apply more rigor to those frontend workflows.

@ScottTodd
Copy link
Member

Looking through the history of https://github.com/iree-org/iree/commits/main/build_tools/python/e2e_test_framework/models/matmul.py, I can't tell how to regenerate those matmul test files. Quite a few PRs with completely empty descriptions :/

Possibly https://github.com/iree-org/iree-experimental/tree/main/iree-torch/library, https://github.com/iree-org/iree-experimental/tree/main/iree-jax/library, etc.?

We might be able to download the existing files, edit them manually to use the new tensor.expand_shape syntax, then upload them and update the URLs. I'm not sure who has access to https://storage.googleapis.com/iree-model-artifacts/ anymore though. We could push there if someone still has access or push elsewhere (a github repo with LFS, Azure, etc.)

@bjacob
Copy link
Contributor Author

bjacob commented May 16, 2024

@mariecwhite, we're going to need help here! Context in the issue description above.

@ScottTodd ScottTodd changed the title Regenerate .mlirbc files in e2e tests/benchmarks disabled in LLVM integrate #17330 Regenerate .mlirbc files for tests and benchmarks after LLVM integrate #17330 May 30, 2024
@ScottTodd
Copy link
Member

For https://github.com/iree-org/iree/tree/main/experimental/regression_suite/tests/pregenerated, tests are still disabled:

# TODO(#17344): regenerate .mlirbc files, test plat_rdna3_rocm on rocm
# # In-tree tests
# - name: Run experimental/regression_suite tests
# run: |
# source ${VENV_DIR}/bin/activate
# pytest \
# -rA -s -m "plat_host_cpu and presubmit" \
# experimental/regression_suite

Instructions for regenerating are at https://github.com/nod-ai/SHARK-Turbine/tree/main/models/turbine_models/custom_models#instructions, but that code hasn't been touched in a while, so it might need other updates too.

@ScottTodd
Copy link
Member

I tried to regenerate the .mlirbc files for https://github.com/nod-ai/SHARK-TestSuite/tree/main/iree_tests/pytorch/models/resnet50 and https://github.com/nod-ai/SHARK-TestSuite/tree/main/iree_tests/pytorch/models/opt-125M, but hit issues with both. Need to apply more rigor to those frontend workflows.

Okay, so https://github.com/nod-ai/SHARK-TestSuite/blob/main/.github/workflows/test_e2eshark.yml (what is generating reports like these) is actually pinned to a very old PyTorch version (2.1.0, 8 months old) by using the requirements files in https://github.com/nod-ai/SHARK-Turbine/tree/torch_2.1/core (that repo itself has also moved to https://github.com/iree-org/iree-turbine).

  • When I try those pinned versions I get RuntimeError: Windows not yet supported for torch.compile
  • When I try with PyTorch 2.4.0 I get TypeError: forward() got an unexpected keyword argument 'constraints'

bangtianliu pushed a commit to bangtianliu/iree that referenced this issue Jun 5, 2024
…800a3 (iree-org#17330)

* torch-mlir integrated at bce800a.
* llvm-project integrated at 2083e97e plus local changes:
* Reverted llvm/llvm-project#89131 locally:
while this change is good in its own right, the `vector.interleave` that
it generates (instead of `vector.shuffle`) are not handled by some GPU
codegen lowerings.
        * Filed iree-org#17346.
* Cherry-picked Bazel build fix:
llvm/llvm-project#91654
* Several e2e tests have been temporarily disabled, follow-up work is
needed to reenable them: iree-org#17344

---------

Co-authored-by: MaheshRavishankar <[email protected]>
Co-authored-by: Scott Todd <[email protected]>
@mariecwhite
Copy link
Contributor

mariecwhite commented Jun 27, 2024

Sorry this got buried in my inbox. I've updated the matmul MLIR files and included instructions on how to regenerate them here: #17748

LLITCHEV pushed a commit to LLITCHEV/iree that referenced this issue Jul 30, 2024
…800a3 (iree-org#17330)

* torch-mlir integrated at bce800a.
* llvm-project integrated at 2083e97e plus local changes:
* Reverted llvm/llvm-project#89131 locally:
while this change is good in its own right, the `vector.interleave` that
it generates (instead of `vector.shuffle`) are not handled by some GPU
codegen lowerings.
        * Filed iree-org#17346.
* Cherry-picked Bazel build fix:
llvm/llvm-project#91654
* Several e2e tests have been temporarily disabled, follow-up work is
needed to reenable them: iree-org#17344

---------

Co-authored-by: MaheshRavishankar <[email protected]>
Co-authored-by: Scott Todd <[email protected]>
Signed-off-by: Lubo Litchev <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants