Create general PoolingOp and decompose to MaxPool2d #1477
217 tests run, 163 passed, 47 skipped, 7 failed.
Annotations
Check failure on line 32 in ttmlir/Dialect/TTNN/convolution
github-actions / macos-latest MLIR Tests
ttmlir/Dialect/TTNN/convolution.complex_conv_channel_first.mlir
Exit Code: 2
Raw output
Exit Code: 2
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir | /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir
+ /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir:9:10: error: failed to legalize unresolved materialization from ('tensor<1x100x7x100xbf16>') to 'tensor<1x7x100x100xbf16>' that remained live after conversion
%1 = "ttir.convolution"(%arg0, %arg1, %0) <{
^
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir:9:10: note: see current operation: %11 = "builtin.unrealized_conversion_cast"(%10) : (tensor<1x100x7x100xbf16>) -> tensor<1x7x100x100xbf16>
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir:32:5: note: see existing live user here: func.return %11 : tensor<1x7x100x100xbf16>
return %1 : tensor<1x7x100x100xbf16>
^
FileCheck error: '<stdin>' is empty.
FileCheck command line: /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/convolution/complex_conv_channel_first.mlir
--
Check failure on line 1 in ttmlir/Dialect/TTNN/pooling
github-actions / macos-latest MLIR Tests
ttmlir/Dialect/TTNN/pooling.simple_maxpool2d.mlir
Exit Code: 2
Raw output
Exit Code: 2
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/pooling/simple_maxpool2d.mlir | /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/pooling/simple_maxpool2d.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/pooling/simple_maxpool2d.mlir
+ /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/pooling/simple_maxpool2d.mlir
Assertion failed: (adaptor.getOriginalHeight().has_value() && "ttir::MaxPool2dOp must have original_height set before translating " "to TTNN dialect."), function matchAndRewrite, file TTIRToTTNN.cpp, line 725.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/pooling/simple_maxpool2d.mlir
#0 0x0000000112def160 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/ttmlir-toolchain/lib/libLLVM.dylib+0x103160)
#1 0x0000000112def5d4 SignalHandler(int) (/opt/ttmlir-toolchain/lib/libLLVM.dylib+0x1035d4)
#2 0x00000001a014e584 (/usr/lib/system/libsystem_platform.dylib+0x18047a584)
#3 0x00000001a011dc20 (/usr/lib/system/libsystem_pthread.dylib+0x180449c20)
#4 0x00000001a002aa30 (/usr/lib/system/libsystem_c.dylib+0x180356a30)
#5 0x00000001a0029d20 (/usr/lib/system/libsystem_c.dylib+0x180355d20)
#6 0x000000010496ceec MaxPool2dOpConversionPattern::matchAndRewrite(mlir::tt::ttir::MaxPool2dOp, mlir::tt::ttir::MaxPool2dOpAdaptor, mlir::ConversionPatternRewriter&) const (.cold.3) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101d10eec)
#7 0x00000001043e9cc0 MaxPool2dOpConversionPattern::matchAndRewrite(mlir::tt::ttir::MaxPool2dOp, mlir::tt::ttir::MaxPool2dOpAdaptor, mlir::ConversionPatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10178dcc0)
#8 0x00000001043e9718 mlir::OpConversionPattern<mlir::tt::ttir::MaxPool2dOp>::matchAndRewrite(mlir::Operation*, llvm::ArrayRef<mlir::Value>, mlir::ConversionPatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10178d718)
#9 0x0000000104472f20 mlir::ConversionPattern::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101816f20)
#10 0x000000010449ec68 void llvm::function_ref<void ()>::callback_fn<mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_2>(long) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101842c68)
#11 0x000000010449c5f4 mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1018405f4)
#12 0x0000000104473918 (anonymous namespace)::OperationLegalizer::legalize(mlir::Operation*, mlir::ConversionPatternRewriter&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101817918)
#13 0x0000000104472fc8 mlir::OperationConverter::convert(mlir::ConversionPatternRewriter&, mlir::Operation*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101816fc8)
#14 0x0000000104473b30 mlir::OperationConverter::convertOperations(llvm::ArrayRef<mlir::Operation*>) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101817b30)
#15 0x0000000104476ea4 mlir::applyFullConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10181aea4)
#16 0x0000000104476f30 mlir::applyFullConversion(mlir::Operation*, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10181af30)
#17 0x00000001043ec36c (anonymous namespace)::ConvertTTIRToTTNNPass::runOnOperation() (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10179036c)
#18 0x00000001044bc190 void llvm::function_ref<void ()>::callback_fn<mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7>(long) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101860190)
#19 0x00000001044b8b54 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185cb54)
#20 0x00000001044b8f4c mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185cf4c)
#21 0x00000001044ba544 mlir::PassManager::run(mlir::Operation*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185e544)
#22 0x0000000104324854 performActions(llvm::raw_ostream&, std::__1::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c8854)
#23 0x000000010432453c llvm::LogicalResult llvm::function_ref<llvm::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::$_2>(long, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c853c)
#24 0x00000001045caaf4 mlir::splitAndProcessBuffer(std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<llvm::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, llvm::StringRef, llvm::StringRef) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10196eaf4)
#25 0x0000000104320160 mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c4160)
#26 0x0000000104320410 mlir::MlirOptMain(int, char**, llvm::StringRef, llvm::StringRef, mlir::DialectRegistry&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c4410)
#27 0x00000001043205f8 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c45f8)
#28 0x0000000102c5f77c main (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10000377c)
#29 0x000000019fd93154
FileCheck error: '<stdin>' is empty.
FileCheck command line: /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/pooling/simple_maxpool2d.mlir
--
Check failure on line 24 in ttmlir/Dialect/TTNN
github-actions / macos-latest MLIR Tests
ttmlir/Dialect/TTNN.simple_constant.mlir
Exit Code: 1
Raw output
Exit Code: 1
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/simple_constant.mlir | /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/simple_constant.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/simple_constant.mlir
+ /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/simple_constant.mlir
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/simple_constant.mlir:24:12: error: CHECK: expected string not found in input
// CHECK: %[[C:.*]] = "ttnn.full"[[C:.*]]
^
<stdin>:19:112: note: scanning from here
%1 = "ttnn.full"(%0) <{fillValue = 1.000000e+00 : f32}> : (!tt.device<#device>) -> tensor<64x128xi32, #layout>
^
<stdin>:24:2: note: possible intended match here
%1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<64x128>}> : () -> tensor<64x128xf32, #layout1>
^
Input file: <stdin>
Check file: /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Dialect/TTNN/simple_constant.mlir
-dump-input=help explains the following input dump.
Input was:
<<<<<<
.
.
.
14: %1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<64x128>}> : () -> tensor<64x128xf32, #layout1>
15: return %1 : tensor<64x128xf32, #layout1>
16: }
17: func.func @test_full_int() -> tensor<64x128xi32, #layout> {
18: %0 = "ttnn.get_device"() <{mesh_shape = #ttnn<mesh_shape 1x1>}> : () -> !tt.device<#device>
19: %1 = "ttnn.full"(%0) <{fillValue = 1.000000e+00 : f32}> : (!tt.device<#device>) -> tensor<64x128xi32, #layout>
check:24'0 X error: no match found
20: return %1 : tensor<64x128xi32, #layout>
check:24'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
21: }
check:24'0 ~~~
22: func.func @test_full_float() -> tensor<64x128xf32, #layout1> {
check:24'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23: %0 = "ttnn.get_device"() <{mesh_shape = #ttnn<mesh_shape 1x1>}> : () -> !tt.device<#device>
check:24'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
24: %1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<64x128>}> : () -> tensor<64x128xf32, #layout1>
check:24'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:24'1 ? possible intended match
25: return %1 : tensor<64x128xf32, #layout1>
check:24'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
26: }
check:24'0 ~~~
27: }
check:24'0 ~~
28:
check:24'0 ~
>>>>>>
--
Check failure on line 34 in ttmlir/Silicon/TTNN
github-actions / macos-latest MLIR Tests
ttmlir/Silicon/TTNN.complex_conv_channel_first.mlir
Exit Code: 1
Raw output
Exit Code: 1
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=" /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/complex_conv_channel_first.mlir > /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/complex_conv_channel_first.mlir.tmp.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline=system-desc-path= /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/complex_conv_channel_first.mlir
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/complex_conv_channel_first.mlir:11:10: error: failed to legalize unresolved materialization from ('tensor<1x100x7x100xbf16>') to 'tensor<1x7x100x100xbf16>' that remained live after conversion
%1 = "ttir.convolution"(%arg0, %arg1, %0) <{
^
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/complex_conv_channel_first.mlir:11:10: note: see current operation: %11 = "builtin.unrealized_conversion_cast"(%10) : (tensor<1x100x7x100xbf16>) -> tensor<1x7x100x100xbf16>
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/complex_conv_channel_first.mlir:34:5: note: see existing live user here: func.return %11 : tensor<1x7x100x100xbf16>
return %1 : tensor<1x7x100x100xbf16>
^
--
Check failure on line 1 in ttmlir/Silicon/TTNN/perf_unit
github-actions / macos-latest MLIR Tests
ttmlir/Silicon/TTNN/perf_unit.test_perf_maxpool2d.mlir
Exit Code: 134
Raw output
Exit Code: 134
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=" /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/perf_unit/test_perf_maxpool2d.mlir > /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/perf_unit/Output/test_perf_maxpool2d.mlir.tmp.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline=system-desc-path= /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/perf_unit/test_perf_maxpool2d.mlir
Assertion failed: (adaptor.getOriginalHeight().has_value() && "ttir::MaxPool2dOp must have original_height set before translating " "to TTNN dialect."), function matchAndRewrite, file TTIRToTTNN.cpp, line 725.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline=system-desc-path= /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/perf_unit/test_perf_maxpool2d.mlir
#0 0x0000000114f97160 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/ttmlir-toolchain/lib/libLLVM.dylib+0x103160)
#1 0x0000000114f975d4 SignalHandler(int) (/opt/ttmlir-toolchain/lib/libLLVM.dylib+0x1035d4)
#2 0x00000001a014e584 (/usr/lib/system/libsystem_platform.dylib+0x18047a584)
#3 0x00000001a011dc20 (/usr/lib/system/libsystem_pthread.dylib+0x180449c20)
#4 0x00000001a002aa30 (/usr/lib/system/libsystem_c.dylib+0x180356a30)
#5 0x00000001a0029d20 (/usr/lib/system/libsystem_c.dylib+0x180355d20)
#6 0x0000000106b14eec MaxPool2dOpConversionPattern::matchAndRewrite(mlir::tt::ttir::MaxPool2dOp, mlir::tt::ttir::MaxPool2dOpAdaptor, mlir::ConversionPatternRewriter&) const (.cold.3) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101d10eec)
#7 0x0000000106591cc0 MaxPool2dOpConversionPattern::matchAndRewrite(mlir::tt::ttir::MaxPool2dOp, mlir::tt::ttir::MaxPool2dOpAdaptor, mlir::ConversionPatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10178dcc0)
#8 0x0000000106591718 mlir::OpConversionPattern<mlir::tt::ttir::MaxPool2dOp>::matchAndRewrite(mlir::Operation*, llvm::ArrayRef<mlir::Value>, mlir::ConversionPatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10178d718)
#9 0x000000010661af20 mlir::ConversionPattern::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101816f20)
#10 0x0000000106646c68 void llvm::function_ref<void ()>::callback_fn<mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_2>(long) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101842c68)
#11 0x00000001066445f4 mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1018405f4)
#12 0x000000010661b918 (anonymous namespace)::OperationLegalizer::legalize(mlir::Operation*, mlir::ConversionPatternRewriter&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101817918)
#13 0x000000010661afc8 mlir::OperationConverter::convert(mlir::ConversionPatternRewriter&, mlir::Operation*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101816fc8)
#14 0x000000010661bb30 mlir::OperationConverter::convertOperations(llvm::ArrayRef<mlir::Operation*>) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101817b30)
#15 0x000000010661eea4 mlir::applyFullConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10181aea4)
#16 0x000000010661ef30 mlir::applyFullConversion(mlir::Operation*, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10181af30)
#17 0x000000010659436c (anonymous namespace)::ConvertTTIRToTTNNPass::runOnOperation() (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10179036c)
#18 0x0000000106664190 void llvm::function_ref<void ()>::callback_fn<mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7>(long) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101860190)
#19 0x0000000106660b54 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185cb54)
#20 0x0000000106660f4c mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185cf4c)
#21 0x0000000106662544 mlir::PassManager::run(mlir::Operation*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185e544)
#22 0x00000001064cc854 performActions(llvm::raw_ostream&, std::__1::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c8854)
#23 0x00000001064cc53c llvm::LogicalResult llvm::function_ref<llvm::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::$_2>(long, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c853c)
#24 0x0000000106772af4 mlir::splitAndProcessBuffer(std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<llvm::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, llvm::StringRef, llvm::StringRef) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10196eaf4)
#25 0x00000001064c8160 mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c4160)
#26 0x00000001064c8410 mlir::MlirOptMain(int, char**, llvm::StringRef, llvm::StringRef, mlir::DialectRegistry&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c4410)
#27 0x00000001064c85f8 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c45f8)
#28 0x0000000104e0777c main (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10000377c)
#29 0x000000019fd93154
/Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/perf_unit/Output/test_perf_maxpool2d.mlir.script: line 3: 15785 Abort trap: 6 /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=" /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/perf_unit/test_perf_maxpool2d.mlir > /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/perf_unit/Output/test_perf_maxpool2d.mlir.tmp.mlir
--
Check failure on line 30 in ttmlir/Silicon/TTNN
github-actions / macos-latest MLIR Tests
ttmlir/Silicon/TTNN.simple_constant.mlir
Exit Code: 1
Raw output
Exit Code: 1
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=" /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_constant.mlir > /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_constant.mlir.tmp.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline=system-desc-path= /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_constant.mlir
RUN: at line 2: /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_constant.mlir --input-file=/Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_constant.mlir.tmp.mlir
+ /opt/ttmlir-toolchain/bin/FileCheck /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_constant.mlir --input-file=/Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_constant.mlir.tmp.mlir
/Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_constant.mlir:32:12: error: CHECK: expected string not found in input
// CHECK: %[[C:.*]] = "ttnn.full"[[C:.*]]
^
/Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_constant.mlir.tmp.mlir:25:112: note: scanning from here
%1 = "ttnn.full"(%0) <{fillValue = 1.000000e+00 : f32}> : (!tt.device<#device>) -> tensor<64x128xi32, #layout>
^
/Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_constant.mlir.tmp.mlir:30:2: note: possible intended match here
%1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<64x128>}> : () -> tensor<64x128xf32, #layout1>
^
Input file: /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_constant.mlir.tmp.mlir
Check file: /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_constant.mlir
-dump-input=help explains the following input dump.
Input was:
<<<<<<
.
.
.
20: %1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<1x1>}> : () -> tensor<1x1xf32, #layout2>
21: return %1 : tensor<1x1xf32, #layout2>
22: }
23: func.func @test_full_int() -> tensor<64x128xi32, #layout> {
24: %0 = "ttnn.get_device"() <{mesh_shape = #ttnn<mesh_shape 1x1>}> : () -> !tt.device<#device>
25: %1 = "ttnn.full"(%0) <{fillValue = 1.000000e+00 : f32}> : (!tt.device<#device>) -> tensor<64x128xi32, #layout>
check:32'0 X error: no match found
26: return %1 : tensor<64x128xi32, #layout>
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
27: }
check:32'0 ~~~
28: func.func @test_full_float() -> tensor<64x128xf32, #layout1> {
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
29: %0 = "ttnn.get_device"() <{mesh_shape = #ttnn<mesh_shape 1x1>}> : () -> !tt.device<#device>
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
30: %1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<64x128>}> : () -> tensor<64x128xf32, #layout1>
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:32'1 ? possible intended match
31: return %1 : tensor<64x128xf32, #layout1>
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32: }
check:32'0 ~~~
33: func.func @test_full_scalar() -> tensor<1x1xf32, #layout2> {
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
34: %0 = "ttnn.get_device"() <{mesh_shape = #ttnn<mesh_shape 1x1>}> : () -> !tt.device<#device>
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
35: %1 = "ttnn.empty"() <{dtype = #tt.supportedDataTypes<f32>, layout = #ttnn.layout<row_major>, shape = #ttnn.shape<1x1>}> : () -> tensor<1x1xf32, #layout2>
check:32'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.
.
.
>>>>>>
--
Check failure on line 1 in ttmlir/Silicon/TTNN
github-actions / macos-latest MLIR Tests
ttmlir/Silicon/TTNN.simple_maxpool2d.mlir
Exit Code: 134
Raw output
Exit Code: 134
Command Output (stderr):
--
RUN: at line 1: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=" /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_maxpool2d.mlir > /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_maxpool2d.mlir.tmp.mlir
+ /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline=system-desc-path= /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_maxpool2d.mlir
Assertion failed: (adaptor.getOriginalHeight().has_value() && "ttir::MaxPool2dOp must have original_height set before translating " "to TTNN dialect."), function matchAndRewrite, file TTIRToTTNN.cpp, line 725.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline=system-desc-path= /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_maxpool2d.mlir
#0 0x0000000112b6b160 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/opt/ttmlir-toolchain/lib/libLLVM.dylib+0x103160)
#1 0x0000000112b6b5d4 SignalHandler(int) (/opt/ttmlir-toolchain/lib/libLLVM.dylib+0x1035d4)
#2 0x00000001a014e584 (/usr/lib/system/libsystem_platform.dylib+0x18047a584)
#3 0x00000001a011dc20 (/usr/lib/system/libsystem_pthread.dylib+0x180449c20)
#4 0x00000001a002aa30 (/usr/lib/system/libsystem_c.dylib+0x180356a30)
#5 0x00000001a0029d20 (/usr/lib/system/libsystem_c.dylib+0x180355d20)
#6 0x00000001046e8eec MaxPool2dOpConversionPattern::matchAndRewrite(mlir::tt::ttir::MaxPool2dOp, mlir::tt::ttir::MaxPool2dOpAdaptor, mlir::ConversionPatternRewriter&) const (.cold.3) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101d10eec)
#7 0x0000000104165cc0 MaxPool2dOpConversionPattern::matchAndRewrite(mlir::tt::ttir::MaxPool2dOp, mlir::tt::ttir::MaxPool2dOpAdaptor, mlir::ConversionPatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10178dcc0)
#8 0x0000000104165718 mlir::OpConversionPattern<mlir::tt::ttir::MaxPool2dOp>::matchAndRewrite(mlir::Operation*, llvm::ArrayRef<mlir::Value>, mlir::ConversionPatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10178d718)
#9 0x00000001041eef20 mlir::ConversionPattern::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&) const (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101816f20)
#10 0x000000010421ac68 void llvm::function_ref<void ()>::callback_fn<mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>)::$_2>(long) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101842c68)
#11 0x00000001042185f4 mlir::PatternApplicator::matchAndRewrite(mlir::Operation*, mlir::PatternRewriter&, llvm::function_ref<bool (mlir::Pattern const&)>, llvm::function_ref<void (mlir::Pattern const&)>, llvm::function_ref<llvm::LogicalResult (mlir::Pattern const&)>) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1018405f4)
#12 0x00000001041ef918 (anonymous namespace)::OperationLegalizer::legalize(mlir::Operation*, mlir::ConversionPatternRewriter&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101817918)
#13 0x00000001041eefc8 mlir::OperationConverter::convert(mlir::ConversionPatternRewriter&, mlir::Operation*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101816fc8)
#14 0x00000001041efb30 mlir::OperationConverter::convertOperations(llvm::ArrayRef<mlir::Operation*>) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101817b30)
#15 0x00000001041f2ea4 mlir::applyFullConversion(llvm::ArrayRef<mlir::Operation*>, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10181aea4)
#16 0x00000001041f2f30 mlir::applyFullConversion(mlir::Operation*, mlir::ConversionTarget const&, mlir::FrozenRewritePatternSet const&, mlir::ConversionConfig) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10181af30)
#17 0x000000010416836c (anonymous namespace)::ConvertTTIRToTTNNPass::runOnOperation() (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10179036c)
#18 0x0000000104238190 void llvm::function_ref<void ()>::callback_fn<mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int)::$_7>(long) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x101860190)
#19 0x0000000104234b54 mlir::detail::OpToOpPassAdaptor::run(mlir::Pass*, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185cb54)
#20 0x0000000104234f4c mlir::detail::OpToOpPassAdaptor::runPipeline(mlir::OpPassManager&, mlir::Operation*, mlir::AnalysisManager, bool, unsigned int, mlir::PassInstrumentor*, mlir::PassInstrumentation::PipelineParentInfo const*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185cf4c)
#21 0x0000000104236544 mlir::PassManager::run(mlir::Operation*) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10185e544)
#22 0x00000001040a0854 performActions(llvm::raw_ostream&, std::__1::shared_ptr<llvm::SourceMgr> const&, mlir::MLIRContext*, mlir::MlirOptMainConfig const&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c8854)
#23 0x00000001040a053c llvm::LogicalResult llvm::function_ref<llvm::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>::callback_fn<mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&)::$_2>(long, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c853c)
#24 0x0000000104346af4 mlir::splitAndProcessBuffer(std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::function_ref<llvm::LogicalResult (std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, llvm::raw_ostream&)>, llvm::raw_ostream&, llvm::StringRef, llvm::StringRef) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10196eaf4)
#25 0x000000010409c160 mlir::MlirOptMain(llvm::raw_ostream&, std::__1::unique_ptr<llvm::MemoryBuffer, std::__1::default_delete<llvm::MemoryBuffer>>, mlir::DialectRegistry&, mlir::MlirOptMainConfig const&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c4160)
#26 0x000000010409c410 mlir::MlirOptMain(int, char**, llvm::StringRef, llvm::StringRef, mlir::DialectRegistry&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c4410)
#27 0x000000010409c5f8 mlir::MlirOptMain(int, char**, llvm::StringRef, mlir::DialectRegistry&) (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x1016c45f8)
#28 0x00000001029db77c main (/Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt+0x10000377c)
#29 0x000000019fd93154
/Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_maxpool2d.mlir.script: line 3: 15907 Abort trap: 6 /Users/runner/work/tt-mlir/tt-mlir/build/bin/ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=" /Users/runner/work/tt-mlir/tt-mlir/test/ttmlir/Silicon/TTNN/simple_maxpool2d.mlir > /Users/runner/work/tt-mlir/tt-mlir/build/test/ttmlir/Silicon/TTNN/Output/simple_maxpool2d.mlir.tmp.mlir
--