Commit f7de16f
authored
Integrate internal changes; LLVM upgrade (#567)
This change integrates the following internal changes (listed from
oldest to newest):
--
ce06fa5b940804009ebfb2652552241057318485 by Samurdhi Karunaratne
<[email protected]>
Support for TRT AOT-Quickly Deployable Plugins (AOT-QDPs)
Adds support for TRT's AOT QDPs, which are available from TRT 10.9
onwards. Guards have been added so that code requiring TRT >= 10.9 won't
break builds against earlier TRT releases.
The changes mostly focus on adding if-else branches for a few
specialized methods in AOT-QDP plugin and plugin creators classes.
--
3964df047bc7ab266054701458709a16c87d7d3d by Chris Bate
<[email protected]>:
NFC: Fixup Executor CMakeLists
Remove outdated LLVM configuration logic
--
a55a19e6cd91f326d4d52372bbcfb89e646b3ee9 by Sagar Shelke
<[email protected]>:
[Dialect/Plan] Add `i16` as valid type after clustering
This MR adds `i16` as valid type after clustering in
`PostClusteringValidation`
pass. Previously op and op type both were checked in single if
condition thus it was hard to tell whether op is problematic or op type
is.
Now, those checks are separated with clear error message.
--
a3b30f5c399984d97903c7baa4952554a4e29eed by Sagar Shelke
<[email protected]>:
[Conversion/StablehloToTensorRT] Fix a bug in `numBatchDims` calculation
in `stablehlo.reduce_window` conversion
This MR fixes an issue in `stablehlo.reduce_window` converter.
Previously, all unit dimensions in window dimensions were considered
batch dimensions (i.e. non spatial dims, strictly speaking). This is
incorrect, since it is possible for spatial dimension to be unit. Based
on TensorRT's requirements, batch dimensions is set to `rank(input) -
spatial_dims`,
where spatial dims is 2 for 4D input and 3 for 5D input.
Valid MLIR test is added.
--
eb38f32f804db10b61f619c0da81a331f83b9c1e by Chris Bate
<[email protected]>:
[compiler][StableHloExt] Fix gather canonicalization in the presence of
batching dims
In Stablehlo v1.1.0, the notion of "batching dimensions" was added to
the
'stablehlo.gather' operation. We did not account for batching dimensions
in
the `stablehlo-ext-canonicalize-gather` pass, which could cause a crash.
This change adds a check so that the patterns in that pass correctly
reject
the gather operations with batching dimensions.
--
90d5be62c8cb36cf80001cc83f9d8e21679ec137 by Chris Bate
<[email protected]>:
[compiler][plan] Fix bug in plan-eliminate-shape-ops pass
Fixes a couple subtle issues in 'plan-eliminate-shape-ops':
- `tensorrt.call` can't have arguments erased "in-place" since it has
multiple variadic operand segments.
- Procedure for calculating symbol user map had small bug.
--
9c48a5251628ba43067870b4dee4e99477d69f8e by Sagar Shelke
<[email protected]>:
[compiler/lib] Handle 1D `chlo.top_k` conversion
This MR updates the `ChloToTensorRT` conversion to handle 1D
`chlo.top_k`
conversion to `tensorrt.top_k`by rank expanding 1D input. TensorRT TopK
op doesn't support 1D input.
A valid MLIR test case is added.
--
db1cc9d58a4925718099f4e223ba3cdbb2a80b0f by Sagar Shelke
<[email protected]>:
[tensorrt/lib/Target] Handle blob dense resource conversion to TensorRT
weights
This MR adds support to convert `DenseResourceElementsAttr` attribute
with data stored in dialect resource map (within IR) to TensorRT
nvinfer1::Weights.
We did not face this issue before since JAX represents these attributes
in
`elided` form but stablehlo IR coming from Torch-MLIR has dialect
resources.
INT4 case is handled specially considering TensorRT packs two INT4s into
one
INT8. For all other types, weights are copied from the dialect resource.
In function `isValidTensorRTInputType`, i64 is added as valid
TensorRT input type.
MLIR test case is added.
--
6b28981e07a6c0e49275824a39cfbe8e680cf052 by Chris Bate
<[email protected]>:
Integrate LLVM/MLIR upstream changes
The last 10 changes in each repo are shown below. Commits prefixed by
(*) are patches maintained locally. Commits prefixed by (cp) are patches
coresponding to cherry-picks from upstream onto our current pinned
commit/branch.
llvm-project/
- (cp) 75f0d527fe5d Mon Feb 3 11:51:42 2025 +0200 [MLIR] Remove
unnecessary include from MathToEmitC.h to fix build issue (#125466)
- (*) 9149d7f145b8 Mon Mar 10 22:03:05 2025 +0000 [mlir][linalg] don't
rewrite DPS init operands in `linalg-fold-unit-extent-dims` if they are
block arguments
- (*) 47c84211f72f Mon Jan 27 08:28:33 2025 +0000 [mlir][emitc] Fix two
EmitC bugs
- (*) f014186374bb Fri May 10 22:39:44 2024 -0600 [mlir][memref] Fix
memref.global overly constrained verifier check
- ec66c4af0926 Fri Jan 24 10:44:00 2025 -0500 [AMDGPU][True16][CodeGen]
true16 codegen pattern for f16 canonicalize (#122000)
- a94226f9e6f5 Fri Jan 24 10:30:10 2025 -0500 [llvm-ml] Remove unsafe
getCurrentSegmentOnly() call (#123355)
stablehlo/
- (*) 97c312a1 Mon Mar 10 22:51:38 2025 +0000 Fix ZeroExtent condition
in simplification pattern
- (*) d31c6ef5 Mon Mar 10 22:04:05 2025 +0000 Don't insert unnecessary
`arith.index_cast` ops
- (*) f45c6b58 Sat Feb 15 22:02:17 2025 +0000 [cmake] Update usage of
`HandleLLVMOptions` and `LLVM_DEFINITIONS`
- (*) cc45fc70 Wed Nov 27 00:10:11 2024 +0000 Fix a couple missing
checks for static shapes in `stablehlo-aggressive-folder`
- 48a1e14e Tue Jan 28 20:32:38 2025 -0800 Integrate LLVM at
llvm/llvm-project@aa65f93b71de (#2701)
- 7c50d4ef Tue Jan 28 19:47:38 2025 -0600 Add ResultAccuracy to ExpOp
(#2694)
- 8993ef70 Tue Jan 28 15:07:17 2025 -0800 Bump patch version after
integrate 1.8.11 -> 1.8.12 (#2700)
- 37750d07 Tue Jan 28 18:26:15 2025 +0100 Add stablehlo-coreml to
awesome.md (#2699)
- 540d48f2 Mon Jan 27 16:49:56 2025 +0100 Added GoMLX and gopjrt for
awesome.md (#2696)
- b9d4c702 Mon Jan 27 07:49:38 2025 -0800 Add IREE project link to
awesome.md. (#2698)
torch-mlir/
- (*) c220abdb Fri Feb 14 00:39:36 2025 +0000 [cmake] Allow finding
Stablehlo via 'find_package'
- ca6cf285 Fri Jan 31 10:48:06 2025 +0530 Bump llvm to
llvm/llvm-project@5d6d982 (#3994)
- 12250739 Tue Jan 28 10:33:51 2025 +0530 Integrate LLVM at
e2402615a5a76d46a433dfcc1de10b38a1263c9d (#3982)
- af8514c9 Mon Jan 27 09:57:07 2025 -0800 Fix logical `or`/`and` usage
for MSVC compilation. (#3984)
- 4f0b79c5 Fri Jan 24 19:40:46 2025 +0530 build: manually update PyTorch
version (#3977)
- 2564d7af Wed Jan 22 15:59:27 2025 -0800 Add center_point_box=1 support
in NonMaxSuppression. (#3976)
- 481da8d2 Wed Jan 22 12:41:18 2025 -0500 [TOSA] : Fix float to integer
cast for `torch.ops.aten.to` lowering. (#3946)
- 9dd94fbb Wed Jan 22 17:42:25 2025 +0100 Attempt to fix the Python
wheels for Windows (#3979)
- 2fb7d6e4 Tue Jan 21 17:09:17 2025 +0100 Update default Python versions
(#3970)
- 2cc31d6a Tue Jan 21 10:12:39 2025 +0530 Backend-legal-ops argument for
fx lowering (#3956)
--
ef9acb4debd15e407fb70e5aa4440b2af14244c4 by Tom Fogal
<[email protected]>:
[executor] standalone cpp runtime: run the network during enqueue.
The 'mtrt::tensorrt_enqueue' function was missing the actual call to
'IExecutionContext::enqueueV3'.
GitOrigin-RevId: ea86bc480ce59e393c534adae77250cc3ce7d1e61 parent f5ddb8d commit f7de16f
File tree
129 files changed
+1768
-6586
lines changed- mlir-tensorrt
- build_tools
- patches
- mlir
- stablehlo
- torch_mlir
- scripts
- compiler
- include/mlir-tensorrt
- Conversion
- StablehloScalarToArith
- TensorRTCommon
- Registration
- lib
- Compiler/StablehloToExecutable
- Conversion
- CUDAToLLVM
- HostToEmitC
- LLVMCommon
- StablehloScalarToArith
- StablehloToTensorRT
- TensorRTCommon
- TensorRTToEmitC
- TensorRTToTensorRTRuntime
- Dialect
- CUDA
- IR
- Transforms
- Plan/Transforms
- StableHloExt
- IR
- Transforms
- Utils
- Transforms
- MemRefCastElimination
- SCFDetensorizeLoops
- StablehloMatchers
- test
- Conversion/StablehloToTensorRT
- Dialect
- Plan
- StableHloExt
- TensorRTRuntime
- python
- IntegrationTests
- mlir_tensorrt_compiler/dialects
- mlir_tensorrt_runtime
- executor
- include/mlir-executor
- Conversion
- Executor/IR
- Support
- Transforms/Clustering
- Utils
- lib
- Conversion
- Executor
- IR
- Transforms
- Runtime
- API
- Backend/C
- StandaloneCPP
- Target/Lua
- Transforms/Clustering
- test
- Conversion
- IntegrationTests
- lib/Transforms/Clustering
- tools/executor-opt
- python
- tensorrt
- include/mlir-tensorrt-dialect/TensorRT/IR
- lib
- Target/TensorRTEncodingOpInterface
- TensorRT
- IR
- Transforms
- Utils
- test
- Dialect/TensorRT/OpaqueQuickPluginTransforms
- Target/TensorRT
- OpaqueQuickPlugin
- lib
- Target
- TensorRT
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
129 files changed
+1768
-6586
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
20 | | - | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
21 | 23 | | |
22 | 24 | | |
23 | 25 | | |
24 | 26 | | |
25 | | - | |
| 27 | + | |
26 | 28 | | |
27 | 29 | | |
28 | | - | |
29 | 30 | | |
30 | 31 | | |
31 | 32 | | |
| |||
39 | 40 | | |
40 | 41 | | |
41 | 42 | | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
59 | 48 | | |
60 | 49 | | |
61 | 50 | | |
| |||
109 | 98 | | |
110 | 99 | | |
111 | 100 | | |
| 101 | + | |
| 102 | + | |
112 | 103 | | |
113 | 104 | | |
114 | 105 | | |
115 | | - | |
| 106 | + | |
116 | 107 | | |
117 | 108 | | |
118 | | - | |
119 | | - | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
120 | 113 | | |
121 | 114 | | |
122 | 115 | | |
| |||
163 | 156 | | |
164 | 157 | | |
165 | 158 | | |
| 159 | + | |
| 160 | + | |
166 | 161 | | |
167 | 162 | | |
168 | 163 | | |
169 | | - | |
170 | | - | |
| 164 | + | |
| 165 | + | |
171 | 166 | | |
172 | 167 | | |
173 | 168 | | |
| |||
Lines changed: 0 additions & 94 deletions
This file was deleted.
Lines changed: 0 additions & 32 deletions
This file was deleted.
Lines changed: 0 additions & 120 deletions
This file was deleted.
Lines changed: 41 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
0 commit comments