Skip to content

Commit

Permalink
rename ipu->npu in programming_examples
Browse files Browse the repository at this point in the history
  • Loading branch information
fifield committed Apr 23, 2024
1 parent 710729a commit fbbf8a2
Show file tree
Hide file tree
Showing 122 changed files with 420 additions and 420 deletions.
6 changes: 3 additions & 3 deletions programming_examples/basic/matrix_add_one/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,15 @@ ACDC_AIE = $(dir $(shell which aie-opt))/..
SHELL := /bin/bash

targetname = matrixAddOne
devicename = ipu
devicename = npu
col = 0

all: build/final.xclbin

build/final.xclbin: build/aie.mlir
mkdir -p ${@D}
cd ${@D} && aiecc.py --aie-generate-cdo --aie-generate-ipu --no-compile-host \
--xclbin-name=${@F} --ipu-insts-name=insts.txt ${<F}
cd ${@D} && aiecc.py --aie-generate-cdo --aie-generate-npu --no-compile-host \
--xclbin-name=${@F} --npu-insts-name=insts.txt ${<F}

${targetname}.exe: test.cpp
rm -rf _build
Expand Down
6 changes: 3 additions & 3 deletions programming_examples/basic/matrix_add_one/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@

# <ins>Matrix Addition</ins>

Single tile performs a very simple `+` operation where the kernel loads data from local memory, increments the value by `1` and stores it back. The DMA in the Shim tile is programmed to bring the bottom left `8x16` portion of a larger `16x128` matrix into the tile to perform the operation. This reference design can be run on either a RyzenAI IPU or a VCK5000.
Single tile performs a very simple `+` operation where the kernel loads data from local memory, increments the value by `1` and stores it back. The DMA in the Shim tile is programmed to bring the bottom left `8x16` portion of a larger `16x128` matrix into the tile to perform the operation. This reference design can be run on either a RyzenAI NPU or a VCK5000.

The kernel executes on AIE tile (`col`, 2). Input data is brought to the local memory of the tile from Shim tile (`col`, 0). The value of `col` is dependent on whether the application is targetting IPU or VCK5000. The Shim tile is programmed with a 2D DMA to only bring a 2D submatrix into the AIE tile for processing.
The kernel executes on AIE tile (`col`, 2). Input data is brought to the local memory of the tile from Shim tile (`col`, 0). The value of `col` is dependent on whether the application is targetting NPU or VCK5000. The Shim tile is programmed with a 2D DMA to only bring a 2D submatrix into the AIE tile for processing.

To compile and run the design for IPU:
To compile and run the design for NPU:
```
make
make run
Expand Down
10 changes: 5 additions & 5 deletions programming_examples/basic/matrix_add_one/aie2.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ def my_matrix_add_one():
if len(sys.argv) != 3:
raise ValueError("[ERROR] Need 2 command line arguments (Device name, Col)")

if sys.argv[1] == "ipu":
dev = AIEDevice.ipu
if sys.argv[1] == "npu":
dev = AIEDevice.npu
elif sys.argv[1] == "xcvc1902":
dev = AIEDevice.xcvc1902
else:
Expand Down Expand Up @@ -85,21 +85,21 @@ def core_body():

@FuncOp.from_py_func(tensor_ty, tensor_ty, tensor_ty)
def sequence(inTensor, notUsed, outTensor):
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="out0",
bd_id=0,
mem=outTensor,
sizes=[1, 1, TILE_HEIGHT, TILE_WIDTH],
strides=[1, 1, IMAGE_WIDTH],
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="in0",
bd_id=1,
mem=inTensor,
sizes=[1, 1, TILE_HEIGHT, TILE_WIDTH],
strides=[1, 1, IMAGE_WIDTH],
)
ipu_sync(column=0, row=0, direction=0, channel=0)
npu_sync(column=0, row=0, direction=0, channel=0)

print(ctx.module)

Expand Down
6 changes: 3 additions & 3 deletions programming_examples/basic/matrix_add_one/run.lit
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
//
// REQUIRES: ryzen_ai
//
// RUN: %python %S/aie2.py ipu 0 > ./aie.mlir
// RUN: %python aiecc.py --aie-generate-cdo --aie-generate-ipu --no-compile-host --xclbin-name=aie.xclbin --ipu-insts-name=insts.txt ./aie.mlir
// RUN: %python %S/aie2.py npu 0 > ./aie.mlir
// RUN: %python aiecc.py --aie-generate-cdo --aie-generate-npu --no-compile-host --xclbin-name=aie.xclbin --npu-insts-name=insts.txt ./aie.mlir
// RUN: clang %S/test.cpp -o test.exe -std=c++11 -Wall %xrt_flags -lrt -lstdc++ -lboost_program_options -lboost_filesystem
// RUN: %run_on_ipu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt | FileCheck %s
// RUN: %run_on_npu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt | FileCheck %s
// CHECK: PASS!

Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ if (NOT WSL)
else()
set(BOOST_ROOT C:/Technical/thirdParty/boost_1_83_0 CACHE STRING "Path to Boost install")
set(XRT_INC_DIR C:/Technical/XRT/src/runtime_src/core/include CACHE STRING "Path to XRT cloned repo")
set(XRT_LIB_DIR C:/Technical/xrtIPUfromDLL CACHE STRING "Path to xrt_coreutil.lib")
set(XRT_LIB_DIR C:/Technical/xrtNPUfromDLL CACHE STRING "Path to xrt_coreutil.lib")
endif()

set(TARGET_NAME test CACHE STRING "Target to be built")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ ${mlir_target}: aie2.py
${xclbin_target}: ${mlir_target} ${kernels:%=build/%.o}
mkdir -p ${@D}
cd ${@D} && aiecc.py --aie-generate-cdo --no-compile-host --xclbin-name=${@F} \
--aie-generate-ipu --ipu-insts-name=${insts_target:build/%=%} $(<:%=../%)
--aie-generate-npu --npu-insts-name=${insts_target:build/%=%} $(<:%=../%)

${targetname}.exe: test.cpp ../test.cpp ../common.h
rm -rf _build
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ def my_matmul():

with mlir_mod_ctx() as ctx:

@device(AIEDevice.ipu)
@device(AIEDevice.npu)
def device_body():
memRef_inA_ty = T.memref(m * k, T.bf16())
memRef_inB_ty = T.memref(k, T.bf16())
Expand Down Expand Up @@ -176,7 +176,7 @@ def core_body():
T.memref(C_sz_in_i32s, T.i32()),
)
def sequence(A, B, C):
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata=inB_fifo_names[0],
bd_id=2,
mem=B,
Expand All @@ -186,15 +186,15 @@ def sequence(A, B, C):
for i in range(n_cores):
A_offset = i * M_div_m_div_n_cores * m * K * word_size_in // 4
C_offset = i * M_div_m_div_n_cores * m * word_size_out // 4
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata=memA_fifo_names[i],
bd_id=1,
mem=A,
offsets=[0, 0, 0, A_offset],
sizes=[M_div_m_div_n_cores, K_div_k, m, k_in_i32s],
strides=[m_x_K_in_i32s, k_in_i32s, K_in_i32s],
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata=outC_fifo_names[i],
bd_id=0,
mem=C,
Expand All @@ -204,7 +204,7 @@ def sequence(A, B, C):
)

for i in range(n_cores):
ipu_sync(column=i, row=0, direction=0, channel=0)
npu_sync(column=i, row=0, direction=0, channel=0)

print(ctx.module)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
//
// RUN: xchesscc_wrapper aie2 -I %aietools/include -c %S/../../../../aie_kernels/aie2/mv.cc -o ./mv.o
// RUN: %python %S/aie2.py -M 288 -K 288 -N 1 > ./aie.mlir
// RUN: %python aiecc.py --aie-generate-cdo --aie-generate-ipu --no-compile-host --xclbin-name=aie.xclbin --ipu-insts-name=insts.txt ./aie.mlir
// RUN: %python aiecc.py --aie-generate-cdo --aie-generate-npu --no-compile-host --xclbin-name=aie.xclbin --npu-insts-name=insts.txt ./aie.mlir
// RUN: g++-13 %S/test.cpp -o test.exe -std=c++23 -Wall %xrt_flags -lrt -lstdc++ -lboost_program_options -lboost_filesystem
// RUN: %run_on_ipu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -M 288 -K 288 -N 1 -v 1 | FileCheck %s
// RUN: %run_on_npu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -M 288 -K 288 -N 1 -v 1 | FileCheck %s
// CHECK: PASS!

Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def my_matmul():

with mlir_mod_ctx() as ctx:

@device(AIEDevice.ipu)
@device(AIEDevice.npu)
def device_body():
memref_a_ty = T.memref(m, k, T.bf16())
memref_b_ty = T.memref(k, n, T.bf16())
Expand Down Expand Up @@ -195,7 +195,7 @@ def sequence(A, B, C):
num_tile_rows = min(
[rows_per_block, M_div_m - tile_row_block * rows_per_block]
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="outC",
bd_id=0,
mem=C,
Expand All @@ -211,23 +211,23 @@ def sequence(A, B, C):
* word_size_in
// 4
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="inA",
bd_id=2 * tile_row + 1,
mem=A,
offsets=[0, 0, 0, A_row_offset_in_i32s],
sizes=[N_div_n, K_div_k, m, k_in_i32s],
strides=[0, k_in_i32s, K_in_i32s],
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="inB",
bd_id=2 * tile_row + 2,
mem=B,
sizes=[N_div_n, K_div_k, k, n_in_i32s],
strides=[n_in_i32s, k_x_N_in_i32s, N_in_i32s],
)

ipu_sync(column=0, row=0, direction=0, channel=0)
npu_sync(column=0, row=0, direction=0, channel=0)

print(ctx.module)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
//
// RUN: xchesscc_wrapper aie2 -I %aietools/include -c %S/../../../../aie_kernels/aie2/mm.cc -o ./mm.o
// RUN: %python %S/aie2.py -M 256 -K 256 -N 256 > ./aie.mlir
// RUN: %python aiecc.py --xbridge --aie-generate-cdo --aie-generate-ipu --no-compile-host --xclbin-name=aie.xclbin --ipu-insts-name=insts.txt ./aie.mlir
// RUN: %python aiecc.py --xbridge --aie-generate-cdo --aie-generate-npu --no-compile-host --xclbin-name=aie.xclbin --npu-insts-name=insts.txt ./aie.mlir
// RUN: g++-13 %S/test.cpp -o test.exe -std=c++23 -Wall %xrt_flags -lrt -lstdc++ -lboost_program_options -lboost_filesystem
// RUN: %run_on_ipu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -M 256 -K 256 -N 256 -v 1 | FileCheck %s
// RUN: %run_on_npu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -M 256 -K 256 -N 256 -v 1 | FileCheck %s
// CHECK: PASS!
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ def my_matmul(M=512, K=512, N=512):

with mlir_mod_ctx() as ctx:

@device(AIEDevice.ipu)
@device(AIEDevice.npu)
def device_body():
memRef_inA_ty = T.memref(m * k, T.bf16())
memRef_inB_ty = T.memref(k * n, T.bf16())
Expand Down Expand Up @@ -317,7 +317,7 @@ def sequence(A, B, C):
for i in range(n_cols):
C_col_offset = i * n * word_size_out
C_offset_in_i32s = (C_col_offset + C_row_offset) // 4
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata=outC_fifo_names[i],
bd_id=0,
mem=C,
Expand Down Expand Up @@ -345,7 +345,7 @@ def sequence(A, B, C):
)
A_col_offset_in_i32s = i * m * K * word_size_in // 4
B_col_offset_in_i32s = i * n * word_size_in // 4
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata=inA_fifo_names[i],
bd_id=2 * tile_row + 1,
mem=A,
Expand All @@ -358,7 +358,7 @@ def sequence(A, B, C):
sizes=[N_div_n_div_n_cols, K_div_k, m, k_in_i32s],
strides=[0, k_in_i32s, K_in_i32s],
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata=inB_fifo_names[i],
bd_id=2 * tile_row + 2,
mem=B,
Expand All @@ -367,7 +367,7 @@ def sequence(A, B, C):
strides=[n_x_n_cols_in_i32s, k_x_N_in_i32s, N_in_i32s],
)
for i in range(n_cols):
ipu_sync(column=i, row=0, direction=0, channel=0)
npu_sync(column=i, row=0, direction=0, channel=0)

# print(ctx.module.operation.verify())
print(ctx.module)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
//
// RUN: xchesscc_wrapper aie2 -I %aietools/include -c %S/../../../../aie_kernels/aie2/mm.cc -o ./mm.o
// RUN: %python %S/aie2.py -M 512 -K 512 -N 512 > ./aie.mlir
// RUN: %python aiecc.py --xbridge --aie-generate-cdo --aie-generate-ipu --no-compile-host --xclbin-name=aie.xclbin --ipu-insts-name=insts.txt ./aie.mlir
// RUN: %python aiecc.py --xbridge --aie-generate-cdo --aie-generate-npu --no-compile-host --xclbin-name=aie.xclbin --npu-insts-name=insts.txt ./aie.mlir
// RUN: g++-13 %S/test.cpp -o test.exe -std=c++23 -Wall %xrt_flags -lrt -lstdc++ -lboost_program_options -lboost_filesystem
// RUN: %run_on_ipu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -v 1 -M 512 -K 512 -N 512 | FileCheck %s
// RUN: %run_on_npu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -v 1 -M 512 -K 512 -N 512 | FileCheck %s
// CHECK: PASS!

2 changes: 1 addition & 1 deletion programming_examples/basic/passthrough_dmas/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ if (NOT WSL)
else()
set(BOOST_ROOT C:/Technical/thirdParty/boost_1_83_0 CACHE STRING "Path to Boost install")
set(XRT_INC_DIR C:/Technical/XRT/src/runtime_src/core/include CACHE STRING "Path to XRT cloned repo")
set(XRT_LIB_DIR C:/Technical/xrtIPUfromDLL CACHE STRING "Path to xrt_coreutil.lib")
set(XRT_LIB_DIR C:/Technical/xrtNPUfromDLL CACHE STRING "Path to xrt_coreutil.lib")
endif()

set(TARGET_NAME test CACHE STRING "Target to be built")
Expand Down
4 changes: 2 additions & 2 deletions programming_examples/basic/passthrough_dmas/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@ inst/insts.txt: aie2.py
rm -rf inst
mkdir -p inst
python3 $< ${devicename} ${col} ${LENGTH} > inst/aie.mlir
pushd inst && aiecc.py --aie-only-generate-ipu --ipu-insts-name=insts.txt aie.mlir && popd
pushd inst && aiecc.py --aie-only-generate-npu --npu-insts-name=insts.txt aie.mlir && popd
${powershell} ./build/${targetname}.exe -x build/final.xclbin -i inst/insts.txt -k MLIR_AIE -l ${LENGTH}

build/final.xclbin: build/aie.mlir
mkdir -p ${@D}
cd ${@D} && aiecc.py --aie-generate-cdo --no-compile-host --xclbin-name=${@F} \
--aie-generate-ipu --ipu-insts-name=insts.txt $(<:%=../%)
--aie-generate-npu --npu-insts-name=insts.txt $(<:%=../%)

${targetname}.exe: test.cpp
rm -rf _build
Expand Down
10 changes: 5 additions & 5 deletions programming_examples/basic/passthrough_dmas/aie2.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@
if len(sys.argv) == 4:
N = int(sys.argv[1])

if sys.argv[1] == "ipu":
dev = AIEDevice.ipu
if sys.argv[1] == "npu":
dev = AIEDevice.npu
elif sys.argv[1] == "xcvc1902":
dev = AIEDevice.xcvc1902
else:
Expand Down Expand Up @@ -62,9 +62,9 @@ def core_body():

@FuncOp.from_py_func(tensor_ty, tensor_ty, tensor_ty)
def sequence(A, B, C):
ipu_dma_memcpy_nd(metadata="out", bd_id=0, mem=C, sizes=[1, 1, 1, N])
ipu_dma_memcpy_nd(metadata="in", bd_id=1, mem=A, sizes=[1, 1, 1, N])
ipu_sync(column=0, row=0, direction=0, channel=0)
npu_dma_memcpy_nd(metadata="out", bd_id=0, mem=C, sizes=[1, 1, 1, N])
npu_dma_memcpy_nd(metadata="in", bd_id=1, mem=A, sizes=[1, 1, 1, N])
npu_sync(column=0, row=0, direction=0, channel=0)

print(ctx.module)

Expand Down
6 changes: 3 additions & 3 deletions programming_examples/basic/passthrough_dmas/run.lit
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
//
// REQUIRES: ryzen_ai
//
// RUN: %python %S/aie2.py ipu 0 > ./aie.mlir
// RUN: %python aiecc.py --aie-generate-cdo --aie-generate-ipu --no-compile-host --xclbin-name=aie.xclbin --ipu-insts-name=insts.txt ./aie.mlir
// RUN: %python %S/aie2.py npu 0 > ./aie.mlir
// RUN: %python aiecc.py --aie-generate-cdo --aie-generate-npu --no-compile-host --xclbin-name=aie.xclbin --npu-insts-name=insts.txt ./aie.mlir
// RUN: clang %S/test.cpp -o test.exe -std=c++11 -Wall %xrt_flags -lrt -lstdc++ -lboost_program_options -lboost_filesystem
// RUN: %run_on_ipu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -l 4096 | FileCheck %s
// RUN: %run_on_npu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt -l 4096 | FileCheck %s
// CHECK: PASS!
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ if (NOT WSL)
else()
set(BOOST_ROOT C:/Technical/thirdParty/boost_1_83_0 CACHE STRING "Path to Boost install")
set(XRT_INC_DIR C:/Technical/XRT/src/runtime_src/core/include CACHE STRING "Path to XRT cloned repo")
set(XRT_LIB_DIR C:/Technical/xrtIPUfromDLL CACHE STRING "Path to xrt_coreutil.lib")
set(XRT_LIB_DIR C:/Technical/xrtNPUfromDLL CACHE STRING "Path to xrt_coreutil.lib")
endif ()

set(PASSTHROUGH_SIZE 4096 CACHE STRING "size")
Expand Down
4 changes: 2 additions & 2 deletions programming_examples/basic/passthrough_kernel/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ build/passThrough.cc.o: passThrough.cc

build/final_${PASSTHROUGH_SIZE}.xclbin: build/aie2_lineBased_8b_${PASSTHROUGH_SIZE}.mlir build/passThrough.cc.o
mkdir -p ${@D}
cd ${@D} && aiecc.py --aie-generate-cdo --aie-generate-ipu --no-compile-host \
--xclbin-name=${@F} --ipu-insts-name=insts.txt $(<:%=../%)
cd ${@D} && aiecc.py --aie-generate-cdo --aie-generate-npu --no-compile-host \
--xclbin-name=${@F} --npu-insts-name=insts.txt $(<:%=../%)

${targetname}.exe: test.cpp
rm -rf _build
Expand Down
8 changes: 4 additions & 4 deletions programming_examples/basic/passthrough_kernel/aie2.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

def passthroughKernel():

@device(AIEDevice.ipu)
@device(AIEDevice.npu)
def device_body():
# define types
memRef_ty = T.memref(lineWidthInBytes, T.ui8())
Expand Down Expand Up @@ -87,19 +87,19 @@ def sequence(inTensor, outTensor, notUsed):
events=[0x4B, 0x22, 0x21, 0x25, 0x2D, 0x2C, 0x1A, 0x4F],
)

ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="in",
bd_id=0,
mem=inTensor,
sizes=[1, 1, 1, tensorSizeInInt32s],
)
ipu_dma_memcpy_nd(
npu_dma_memcpy_nd(
metadata="out",
bd_id=1,
mem=outTensor,
sizes=[1, 1, 1, tensorSizeInInt32s],
)
ipu_sync(column=0, row=0, direction=0, channel=0)
npu_sync(column=0, row=0, direction=0, channel=0)


with mlir_mod_ctx() as ctx:
Expand Down
6 changes: 3 additions & 3 deletions programming_examples/basic/passthrough_kernel/run.lit
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
//
// RUN: xchesscc_wrapper aie2 -I %aietools/include -DBIT_WIDTH=8 -c %S/../../../aie_kernels/generic/passThrough.cc -o passThrough.cc.o
// RUN: %python %S/aie2.py 4096 | aie-opt -cse -canonicalize -o ./aie.mlir
// RUN: %python aiecc.py --xbridge --aie-generate-cdo --aie-generate-ipu --no-compile-host --xclbin-name=aie.xclbin --ipu-insts-name=insts.txt ./aie.mlir
// RUN: %python aiecc.py --xbridge --aie-generate-cdo --aie-generate-npu --no-compile-host --xclbin-name=aie.xclbin --npu-insts-name=insts.txt ./aie.mlir
// RUN: g++ %S/test.cpp -o test.exe -std=c++23 -Wall -DPASSTHROUGH_SIZE=4096 -I%S/../../../runtime_lib/test_lib %S/../../../runtime_lib/test_lib/test_utils.cpp %xrt_flags -lrt -lstdc++ -lboost_program_options -lboost_filesystem
// RUN: %run_on_ipu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt | FileCheck %s
// RUN: %run_on_ipu %python %S/test.py -x aie.xclbin -i insts.txt -k MLIR_AIE -s 4096 | FileCheck %s
// RUN: %run_on_npu ./test.exe -x aie.xclbin -k MLIR_AIE -i insts.txt | FileCheck %s
// RUN: %run_on_npu %python %S/test.py -x aie.xclbin -i insts.txt -k MLIR_AIE -s 4096 | FileCheck %s
// CHECK: PASS!
Loading

0 comments on commit fbbf8a2

Please sign in to comment.