Tanyo Kwok
297fd3aa47
Revert "reimplement linear lowering torchToMhlo ( #1524 )" ( #1744 )
...
This reverts commit 50b524546f
.
2022-12-21 21:24:07 -08:00
zzp_miracle
50b524546f
reimplement linear lowering torchToMhlo ( #1524 )
2022-12-22 10:15:16 +08:00
Jiahao Li
15b249777b
[Torch][MHLO] Decompose aten.copy op. Lower aten.rsqrt & sigmoid to mhlo. ( #1734 )
2022-12-22 10:13:59 +08:00
Chi_Liu
9dc09ac8c5
[TOSA] Add aten.gather support for tosa ( #1680 )
2022-12-21 11:04:07 -08:00
Chi_Liu
b2cefc0b64
[TOSA] Add aten.masked_fill.Tensor/Scalar support ( #1735 )
2022-12-21 08:56:07 -08:00
Chi_Liu
163d19cce6
[TOSA] Add aten.add/sub.Scalar/Tensor si64 type support ( #1604 )
2022-12-12 12:13:07 -08:00
Vivek Khandelwal
f416953600
[MLIR][TORCH] Add TorchConversionToMLProgram and MLProgramBufferize pass
...
This commit changes the `InsertRngGlobalsPass` to `TorchConversionToMLProgram`
pass. This commit also adds the `MLProgramBufferize` pass for the
bufferization of ml_program dialect ops to run on refbackend.
Signed-Off By: Vivek Khandelwal<vivek@nod-labs.com>
2022-12-02 13:20:46 +05:30
Vivek Khandelwal
e7edcc62fd
build: update llvm tag to 147fe9de
...
Summary of changes:
- Replace call to `MemoryEffectOpInterface::hasNoEffect`
with `isMemoryEffectFree`.
- Make fix for the dynamic dims, since
`kDynamicSize` value changed to
`std::numeric_limits<int64_t>::min()` from `-1` in llvm
- `makeShapeLLVMCompatible` and `makeShapeTorchCompatible`
utilities convert shapes in order to remain consistent
with the Torch and MLIR semantics.
- Update tags
llvm: 147fe9de29dc13c14835127b35280c4d95c8e8ba
mhlo: 1944b5fa6062ec4c065d726c9c5d64f1487ee8c5
Signed-Off By: Vivek Khandelwal<vivek@nod-labs.com>
2022-12-01 13:36:50 +05:30
Vivek Khandelwal
d9cbf01d1e
Revert "build: update llvm tag to 147fe9de"
...
This reverts commit e45ad313d4
.
2022-11-25 12:41:56 +05:30
Vivek Khandelwal
e45ad313d4
build: update llvm tag to 147fe9de
...
Summary of changes:
- Update call to `hasNoEffect` utility
- `KDynamicSize` value changed to
`std::numeric_limits<int64_t>::min()` from `-1`
- Update tags
llvm: 147fe9de29dc13c14835127b35280c4d95c8e8ba
mhlo: 1944b5fa6062ec4c065d726c9c5d64f1487ee8c5
Signed-Off By: Vivek Khandelwal<vivek@nod-labs.com>
2022-11-24 12:44:43 +05:30
Tanyo Kwok
4aad5ccf39
fix #1626 return type mismatch ( #1634 )
2022-11-23 15:02:41 +08:00
Chi_Liu
29c8f47723
[TOSA] Add aten.clamp op tosa support ( #1609 )
...
Co-authored-by: AmosLewis <Amos_Lewsi@foxmail.com>
2022-11-18 13:32:13 -08:00
Chi_Liu
dfe7513a45
[MLIR][TORCH] Fix aten.unsqueeze op ( #1578 )
...
The range of the unsqueeze dim is: [-input.dim() - 1, input.dim() + 1), the bug forgets to add 1.
2022-11-14 09:09:15 -08:00
Tanyo Kwok
17bc7c89cc
build: update llvm tag to 74fb770d ( #1539 )
...
* build: update llvm tag to 74fb770d
This commit makes the following changes needed to update bump LLVM:
+ replace usages of `tensor::createPadScalarOp`, see https://reviews.llvm.org/D136493
+ Update file checks
2022-11-01 15:27:09 +08:00
Ramiro Leal-Cavazos
b723186983
Remove all but one of valsem ops + move fill.Scalar to elementwise ( #1531 )
...
This commit removes almost all of the valsem ops, since the value
semantics version of the ops now exist in PyTorch. The only op missing
is `aten.bernoulli_.float`. In addition, this commit also simplifies
the implementation of `aten.fill.Scalar` by moving it to the pattern
that converts elementwise ops.
2022-10-28 15:06:11 +00:00
Ashay Rane
a11ea93877
build: update llvm tag to f8b84268 ( #1528 )
...
The only change required was to update a test to reflect the changes
in https://reviews.llvm.org/D136541 .
2022-10-26 15:33:53 -05:00
Chi_Liu
ad6f5848cb
[MLIR][TORCH] Add TorchToTosa lowering for aten.where.self op ( #1454 )
2022-10-18 09:39:39 -07:00
Ramiro Leal-Cavazos
82a3860e25
build: update llvm tag to 4546397e ( #1502 )
...
This commit makes the following changes needed to update bump LLVM:
- Replace `linalg.init_tensor` with `tensor.empty` (see:
https://reviews.llvm.org/D135129 )
- Replace `NoSideEffect` with `Pure` (see
https://reviews.llvm.org/D135505 )
- Replace `body` region accessor for `ReduceOp` and `ReduceWindowOp`
with `getBody`
- Fix incorrect use of `tosa::ReduceSumOp` in `AtenNativeLayerNormOp`
conversion pattern. The result type of `tosa::ReduceSumOp` must have
the same rank as the input type. (see:
https://www.mlplatform.org/tosa/tosa_spec.html#_reduce_sum )
Co-authored-by: Ashay Rane <ashay@users.noreply.github.com>
Co-authored-by: Ashay Rane <ashay@users.noreply.github.com>
2022-10-18 04:22:53 +00:00
Vivek Khandelwal
d3cc3f1aff
[tosa] Add lowering for aten.to.dtype and aten._to_copy op
...
This commit adds the TorchToTosa lowering for `aten.to.dtype` and
`aten._to_copy` op.
Signed-Off By: Vivek Khandelwal<vivek@nod-labs.com>
2022-10-06 12:00:25 +05:30
Vivek Khandelwal
56f9a9b5de
[tosa] Add TorchToTosa lowering for torch.prim.NumToTensor.Scalar op
...
Signed-Off By: Vivek Khandelwal<vivek@nod-labs.com>
2022-10-06 12:00:25 +05:30
Vivek Khandelwal
9dd5ae8239
[tosa] Add TorchToTosa lowering for aten.arange.start_step op ( #1442 )
2022-09-30 07:33:41 -07:00
AmosLewis
940959589b
[MLIR][TORCH] Add Byte and Char Dtype support
2022-09-30 13:19:31 +05:30
Vivek Khandelwal
bce00c8ed1
[tosa] Fix torch.vtensor.literal lowering
...
Signed-Off By: Vivek Khandelwal<vivek@nod-labs.com>
2022-09-29 17:03:10 +05:30
JakopinA
8ef0c874c2
Implement Expand/Collapse Functionality for Aten.View ( #1353 )
2022-09-27 11:08:14 -07:00
Eric Kunze
cb1b8796a2
Convert torch si literals into signless for TOSA ( #1421 )
2022-09-26 16:54:27 -07:00
Tanyo Kwok
16dd7e2e5f
Fix dynamic shapes type verifications ( #1409 )
...
* Fix dynamic shapes type verifications
2022-09-23 20:50:29 +08:00
Tanyo Kwok
061a97c3f2
Replace empty_like && empty_memory_format with full/full_like ( #1398 )
...
* Replace empty_like && empty_memory_format with full/full_like
* fix broadcast rank0 tensor
2022-09-23 10:24:36 +08:00
long.chen
797feaf129
[torch-mlir][Tosa] fix during torch.max.dim lower to tosa the reshape's new shape attr mismatch reshape's result type ( #1378 )
2022-09-16 21:29:56 -07:00
Ashay Rane
e52e886845
build: update llvm tag to 00d648bd ( #1307 )
...
- Update MHLO commit to build with LLVM commit hash 00d648bd
- Update TorchToMhlo code to work with Stablehlo
- Re-enabled two failing TOSA tests, thus resolving Github Issue #1231
2022-08-30 14:44:00 -05:00
Vivek Khandelwal
65d811e267
[MLIR][TORCH] Fix dynamic cases for aten.index.Tensor
2022-08-19 12:13:20 +05:30
武家伟
7bd173a1c4
[MHLO] Eliminate explicit dynamic output shape generating in converting AtenSliceTensorOp ( #1245 )
...
[MHLO] Eliminate explicit dynamic output shape generating in converting AtenSliceTensorOp
2022-08-19 10:14:57 +08:00
Yan Xu
9be8997536
Revert "add native_dropout and related ops pattern ( #1211 )" ( #1230 )
...
This reverts commit c935795086
.
2022-08-17 13:48:10 +08:00
武家伟
11a5b5ac52
[MHLO] Add AtenRSubScalarOp conversion pattern to MHLO ( #1233 )
...
* [MHLO] Add AtenRSubScalarOp conversion pattern
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
2022-08-17 09:07:36 +08:00
Ashay Rane
84d345c650
build: update llvm tag to 2dde4ba6 ( #1229 )
...
Summary of changes:
- Tensor dialect now sets `emitAccessorPrefix` to prefixed, thus
requring updates to methods that retrieve arguments
[https://reviews.llvm.org/D131361 ]
- Update MHLO to build with LLVM commit hash 2dde4ba6
- Replace `AbsOp` with `AbsFOp` [https://reviews.llvm.org/D131325 ]
- Replace deprecated `getValue()` with `value()`
[https://reviews.llvm.org/D131349 ]
- Remove `AnalysisState::defaultInitialize()`
[https://reviews.llvm.org/D131746 ]
- Update MHLO MLIR tests to use the updated assembly format
- Disabled two failing TOSA tests (Github Issue link:
https://github.com/llvm/torch-mlir/issues/1231 )
2022-08-15 23:54:45 -07:00
Yan Xu
c935795086
add native_dropout and related ops pattern ( #1211 )
2022-08-15 09:28:47 +08:00
Ramana Radhakrishnan
738f4fe96a
Rename TorchToStd pass as TorchToArith ( #1163 )
...
All the converters in this pass appear to create ops from the
arith dialect. Hence the full rename.
Fix GH Issue #409 .
2022-08-10 20:12:51 +01:00
武家伟
87562773f8
[MHLO] Add AtenCatOp conversion pattern to MHLO ( #1208 )
...
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
Co-authored-by: Vremold <xremold@gamil.com>
2022-08-09 22:12:34 -07:00
Ashay Rane
bb47c166a0
llvm: update tag to 061e0189 ( #1180 )
...
Summary of changes:
- Switch to C++17 (similar to https://reviews.llvm.org/D131348 )
- Update MHLO to build with LLVM commit hash 061e0189
- Replace deprecated `hasValue()` and `getValue()` with `has_value()`
and `value()` respectively (https://reviews.llvm.org/D131349 )
- Use `TypedAttr` (https://reviews.llvm.org/D130092 )
- Use updated assembly format of `mhlo.compare` op (commit
d03ef01e70fbf9afd0fa1976fbb7ed31838929b3 in MHLO repo)
2022-08-08 20:17:35 -07:00
武家伟
351f15424e
[MHLO] Add transposed convolution conversion pattern ( #1171 )
...
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
2022-08-09 09:50:07 +08:00
Tanyo Kwok
290d7755fb
importer: add initial support for loading Float16 tensors ( #1169 )
...
follow up #761 :
This patch updates the `torch_mlir::convertTensorToMlirElementsAttr()`
method to enable the creation of tensors whose base type is Float16.
This patch also adds a test to validate the IR generation, and it
updates the test for importing tensors of various types.
2022-08-08 12:37:31 +08:00
Tanyo Kwok
1ee865983b
[MHLO] fix tensor mode aten.div op pattern ( #1160 )
...
* [MHLO] fix tensor mode aten.div op pattern
See RFC #999
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
2022-08-06 23:38:06 +08:00
武家伟
c94431f71c
[MHLO] Add convolution op pattern ( #1152 )
...
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
2022-08-04 00:41:35 -07:00
武家伟
d030591df9
[MHLO] Init MHLO pooling-like op conversion ( #1141 )
...
* [MHLO] Init MHLO pooling-like op conversion and remove 'op' suffix in filenames
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo tianyou.gty@alibaba-inc.com
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
See RFC #999
2022-08-04 12:34:22 +08:00
Tanyo Kwok
f0a24f59f6
[MHLO] Init MHLO linear op patterns ( #1132 )
...
See RFC https://github.com/llvm/torch-mlir/issues/999
Co-authored-by: Bairen Yi yibairen.byron@bytedance.com
Co-authored-by: Jiawei Wu xremold@gmail.com
Co-authored-by: Tianyou Guo tianyou.gty@alibaba-inc.com
Co-authored-by: Xu Yan yancey.yx@alibaba-inc.com
Co-authored-by: Ziheng Jiang ziheng.jiang@bytedance.com
2022-08-03 19:10:54 -07:00
武家伟
636f5acb10
[MHLO] Init MHLO reduce-like op conversion ( #1133 )
...
* [MHLO] init reduce-like op conversion from Torch to MHLO
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
2022-08-03 10:47:52 +08:00
Tanyo Kwok
0b23af27d3
[MHLO] support non-constant torch scalar in BasicOps ( #1134 )
...
See RFC https://github.com/llvm/torch-mlir/issues/999
Co-authored-by: Bairen Yi yibairen.byron@bytedance.com
Co-authored-by: Jiawei Wu xremold@gmail.com
Co-authored-by: Tianyou Guo tianyou.gty@alibaba-inc.com
Co-authored-by: Xu Yan yancey.yx@alibaba-inc.com
Co-authored-by: Ziheng Jiang ziheng.jiang@bytedance.com
2022-08-03 08:16:31 +08:00
Yan Xu
704efdc259
[MHLO] add aten::gelu op pattern ( #1127 )
...
add aten::gelu op pattern, and moved some unit tests from basic.mlir to elementwise.mlir
2022-08-02 15:01:30 +08:00
武家伟
76c976682c
[MHLO] Support for dynamic shape in basic op conversion by introducing CHLO dialect ( #1123 )
...
* [MHLO] Support for dynamic shape in basic op conversion by introducing CHLO dialect
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
* [MHLO] Support I32 as shape tensor dtype
* [NFC] Add a 'TODO' annotation
2022-08-02 12:53:24 +08:00
Vivek Khandelwal
7247c6a3a7
[MLIR][TORCH] Add E2E support for aten.ge.int op
...
This commit adds lowering of `aten.ge.int` op.
Signed-Off By: Vivek Khandelwal <vivek@nod-labs.com>
2022-07-29 11:08:57 +05:30
武家伟
052d2f84dc
[MHLO] Init MHLO basic op conversion ( #1092 )
...
* [MHLO] Init MHLO basic Op Conversion
Co-authored-by: Bairen Yi <yibairen.byron@bytedance.com>
Co-authored-by: Jiawei Wu <xremold@gmail.com>
Co-authored-by: Tianyou Guo <tianyou.gty@alibaba-inc.com>
Co-authored-by: Xu Yan <yancey.yx@alibaba-inc.com>
Co-authored-by: Ziheng Jiang <ziheng.jiang@bytedance.com>
* [NFC] Remove 'from @llvm-project' annotation
Co-authored-by: wujiawei.jw <wujiawei.jw@bytedance.com>
2022-07-27 13:07:51 +08:00