diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index 68db5d1cf..a4f884223 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -265,10 +265,11 @@ jobs: fail-fast: false matrix: build: [ - {runs-on: n150, enable_perf: OFF, name: "run", ttrt_flags: "--non-zero"}, - {runs-on: n150, enable_perf: ON, name: "perf"}, - {runs-on: n300, enable_perf: OFF, name: "run", ttrt_flags: "--non-zero"}, - {runs-on: n300, enable_perf: ON, name: "perf"}, + {runs-on: n150, enable_perf: OFF, emitc: OFF, name: "run", ttrt_flags: "--non-zero"}, + {runs-on: n150, enable_perf: ON, emitc: OFF, name: "perf"}, + {runs-on: n150, enable_perf: OFF, emitc: ON, name: "run", ttrt_flags: "--emitc"}, + {runs-on: n300, enable_perf: OFF, emitc: OFF, name: "run", ttrt_flags: "--non-zero"}, + {runs-on: n300, enable_perf: ON, emitc: OFF, name: "perf"}, ] name: "run-tests (${{ matrix.build.runs-on }}, ${{ matrix.build.enable_perf }}, ${{ matrix.build.name }})" @@ -374,6 +375,13 @@ jobs: ttrt ${{ matrix.build.name }} ${{ matrix.build.ttrt_flags }} ${{ steps.strings.outputs.build-output-dir }}/test/ttmlir/Silicon/TTNN/perf_unit cp ttrt_report.xml ${{ steps.strings.outputs.test_report_path }} + - name: Run emitc tests + shell: bash + if: matrix.build.emitc == 'ON' + run: | + source env/activate + ttrt ${{ matrix.build.name }} ${{ matrix.build.ttrt_flags }} ${{ steps.strings.outputs.build-output-dir }}/test/ttmlir/Silicon/TTNN/emitc + - name: Upload ttrt test report json if: always() uses: actions/upload-artifact@v4 diff --git a/test/lit.cfg.py b/test/lit.cfg.py index 7fa5bb68e..a039ddb57 100644 --- a/test/lit.cfg.py +++ b/test/lit.cfg.py @@ -135,6 +135,3 @@ def set_system_desc_features(system_desc): os.getenv("TT_METAL_HOME"), append_path=False, ) - -for name, value in os.environ.items(): - print("{0}: {1}".format(name, value)) diff --git a/test/ttmlir/Silicon/TTNN/emitc/mnist.mlir b/test/ttmlir/Silicon/TTNN/emitc/mnist.mlir index f3076360e..4fa009717 100644 --- a/test/ttmlir/Silicon/TTNN/emitc/mnist.mlir +++ b/test/ttmlir/Silicon/TTNN/emitc/mnist.mlir @@ -1,6 +1,11 @@ -// RUN: ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=%system_desc_path%" --ttnn-create-input-gens --convert-ttnn-to-emitc %s > %t.mlir +// RUN: ttmlir-opt --ttir-to-ttnn-backend-pipeline="system-desc-path=%system_desc_path%" %s > %t.mlir +// RUN: ttmlir-translate --ttnn-to-flatbuffer %t.mlir > %basename_t.ttnn +// RUN: ttmlir-opt --ttnn-modify-signatures-for-dylib --convert-ttnn-to-emitc %t.mlir > %t2.mlir +// RUN: ttmlir-translate --mlir-to-cpp %t2.mlir > %basename_t.cpp +// RUN: compile_dylib.py %basename_t.cpp . +// UNSUPPORTED: true -module @MNISTLinear attributes {tt.system_desc = #tt.system_desc<[{role = host, target_triple = "x86_64-pc-linux-gnu"}], [{arch = , grid = 8x8, l1_size = 1499136, num_dram_channels = 12, dram_channel_size = 1073741824, noc_l1_address_align_bytes = 16, pcie_address_align_bytes = 32, noc_dram_address_align_bytes = 32, l1_unreserved_base = 1024, erisc_l1_unreserved_base = 1024, dram_unreserved_base = 1024, dram_unreserved_end = 1073741824, physical_cores = {worker = [ 0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 1x0, 1x1, 1x2, 1x3, 1x4, 1x5, 1x6, 1x7, 2x0, 2x1, 2x2, 2x3, 2x4, 2x5, 2x6, 2x7, 3x0, 3x1, 3x2, 3x3, 3x4, 3x5, 3x6, 3x7, 4x0, 4x1, 4x2, 4x3, 4x4, 4x5, 4x6, 4x7, 5x0, 5x1, 5x2, 5x3, 5x4, 5x5, 5x6, 5x7, 6x0, 6x1, 6x2, 6x3, 6x4, 6x5, 6x6, 6x7, 7x0, 7x1, 7x2, 7x3, 7x4, 7x5, 7x6, 7x7] dram = [ 8x0, 9x0, 10x0, 8x1, 9x1, 10x1, 8x2, 9x2, 10x2, 8x3, 9x3, 10x3]}, supported_data_types = [, , , , , , , , , , , ], supported_tile_sizes = [ 4x16, 16x16, 32x16, 4x32, 16x32, 32x32], num_cbs = 32}], [0], [3 : i32], [ 0x0x0x0]>} { +module @MNISTLinear attributes {} { func.func @forward(%arg0: tensor<1x784xf32> {ttir.name = "input_1"}, %arg1: tensor<784x512xf32> {ttir.name = "linear_relu_stack.0.weight"}, %arg2: tensor<512xf32> {ttir.name = "linear_relu_stack.0.bias"}, %arg3: tensor<512x512xf32> {ttir.name = "linear_relu_stack.2.weight"}, %arg4: tensor<512xf32> {ttir.name = "linear_relu_stack.2.bias"}, %arg5: tensor<512x10xf32> {ttir.name = "linear_relu_stack.4.weight"}, %arg6: tensor<10xf32> {ttir.name = "linear_relu_stack.4.bias"}) -> (tensor<1x10xf32> {ttir.name = "MNISTLinear_350.output_add_981"}) { %0 = tensor.empty() : tensor<1x512xf32> %1 = "ttir.matmul"(%arg0, %arg1, %0) : (tensor<1x784xf32>, tensor<784x512xf32>, tensor<1x512xf32>) -> tensor<1x512xf32>