[Encoding] Clarify IREE::Encoding interfaces. (#20037) #17879
pkgci.yml
on: push
setup
/
setup
5s
Matrix: Regression Test / test_regression_suite
Matrix: Test ONNX / test_onnx_models
Matrix: Test ONNX / test_onnx_ops
Matrix: Test PJRT plugin / Build and test
Matrix: Test Sharktank / test_sharktank_models
Unit Test
/
Linux (x86_64)
2m 36s
Test AMD MI250
/
test_mi250
5m 40s
Test AMD MI300
/
test_mi300
4m 43s
Test AMD W7900
/
test_w7900
1m 57s
Test Android
/
android_arm64
7m 0s
Test RISC-V 64
/
riscv64
10m 41s
Test TensorFlow
/
Linux (x86_64)
1m 11s
pkgci_summary
/
summary
2s
Annotations
4 errors and 2 warnings
Test AMD MI300 / test_mi300
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
|
Test AMD MI300 / test_mi300
WARNING: The directory '/github/home/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
|
Test AMD MI300 / test_mi300
Process completed with exit code 8.
|
pkgci_summary / summary
Process completed with exit code 1.
|
Test RISC-V 64 / riscv64
Cache not found for keys: ccache-riscv64-
|
pkgci_summary / summary
embed field value must be shorter than 1024, got 1216
[`308d176`](https://github.com/iree-org/iree/commit/308d1768ca2ad166cb7309a2de3842a269ae713e) [Encoding] Clarify IREE::Encoding interfaces. (#20037)
Based on the learning from prototype, there are two kinds of encodings:
1. An encoding that is attached to the types, which is an encoding
attribute.
2. An encoding that can query layouts from backends' perspective, which
is an encoding layout resolver.
The former implements SerializeableEncodingAttrInterface, and the latter
implements the EncodingLayoutResolverAttrInterface.
The revision moves the `cloneWithLayouts` method to the former
interface, because it is used to update the former attributes.
The revision introduces `isSerialized` interface method to
SerializeableEncodingAttrInterface, implements the method for existing
encoding attributes, and makes the SpecializeEncoding pass skip the
update if it is already serialized.
We don't use `isSpecialized` because specialization has larger scope. It
does not only serialize the encodings, but also contains the analysis on
affinities and executable duplication.
The revision also fixes a bug when the HAL device does not have
configuration.
---------
Signed-off-by: hanhanW <[email protected]>
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
linux_x86_64_release_packages
|
75.4 MB |
|