(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_topi_conv2d_transpose.py
Conv2DTransposeWorkload(batch=1, height=4, width=4, in_filter=1024, out_filter=512, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
CPU CONV2D TEST PASSED: Time cost = 1.28334 sec/op, 0.836676 GOPS
Conv2DTransposeWorkload(batch=1, height=8, width=8, in_filter=512, out_filter=256, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
CPU CONV2D TEST PASSED: Time cost = 0.689575 sec/op, 1.55711 GOPS
Conv2DTransposeWorkload(batch=1, height=16, width=16, in_filter=256, out_filter=128, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
CPU CONV2D TEST PASSED: Time cost = 0.667555 sec/op, 1.60847 GOPS
Conv2DTransposeWorkload(batch=1, height=4, width=4, in_filter=1024, out_filter=512, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
[03:50:00] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.0243217 sec/op, 44.1474 GOPS
Conv2DTransposeWorkload(batch=1, height=8, width=8, in_filter=512, out_filter=256, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
[03:50:05] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.0218975 sec/op, 49.0348 GOPS
Conv2DTransposeWorkload(batch=1, height=16, width=16, in_filter=256, out_filter=128, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
[03:50:09] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.0224395 sec/op, 47.8505 GOPS
# DCGAN workloads
dcgan_wklds = [
# dcgan
("DCGAN.CT1", Workload(env.BATCH, 4, 4, 1024, 512, 4, 4, 1, 1, 2, 2, 0, 0)),
("DCGAN.CT2", Workload(env.BATCH, 8, 8, 512, 256, 4, 4, 1, 1, 2, 2, 0, 0)),
("DCGAN.CT3", Workload(env.BATCH, 16, 16, 256, 128, 4, 4, 1, 1, 2, 2, 0, 0)),
]
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
[sudo] password for xilinx:
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 40230)
INFO:root:Program FPGA with 1x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 40230)
INFO:RPCServer:connection from ('192.168.3.10', 40232)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 40232)
INFO:RPCServer:connection from ('192.168.3.10', 40234)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpqnxin9lm/conv2d_transpose.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpqnxin9lm/conv2d_transpose.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpqnxin9lm/conv2d_transpose.o
INFO:RPCServer:Finish serving ('192.168.3.10', 40234)
INFO:RPCServer:connection from ('192.168.3.10', 40248)
INFO:root:Program FPGA with 1x16_i8w8a32_15_15_18_17.bit
INFO:root:Skip reconfig_runtime due to same config.
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpf9xaj93n/conv2d_transpose.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpf9xaj93n/conv2d_transpose.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpf9xaj93n/conv2d_transpose.o
INFO:RPCServer:Finish serving ('192.168.3.10', 40248)
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_topi_conv2d.py
Conv2DWorkload(batch=1, height=56, width=56, in_filter=64, out_filter=64, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
CPU CONV2D TEST PASSED: Time cost = 0.14728 sec/op, 1.56987 GOPS
Conv2DWorkload(batch=1, height=56, width=56, in_filter=64, out_filter=128, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
CPU CONV2D TEST PASSED: Time cost = 0.075877 sec/op, 1.52359 GOPS
Conv2DWorkload(batch=1, height=56, width=56, in_filter=64, out_filter=128, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
CPU CONV2D TEST PASSED: Time cost = 0.00990135 sec/op, 1.2973 GOPS
Conv2DWorkload(batch=1, height=28, width=28, in_filter=128, out_filter=128, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
CPU CONV2D TEST PASSED: Time cost = 0.163193 sec/op, 1.41679 GOPS
Conv2DWorkload(batch=1, height=28, width=28, in_filter=128, out_filter=256, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
CPU CONV2D TEST PASSED: Time cost = 0.0765482 sec/op, 1.51023 GOPS
Conv2DWorkload(batch=1, height=28, width=28, in_filter=128, out_filter=256, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
CPU CONV2D TEST PASSED: Time cost = 0.0111157 sec/op, 1.15558 GOPS
Conv2DWorkload(batch=1, height=14, width=14, in_filter=256, out_filter=256, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
CPU CONV2D TEST PASSED: Time cost = 0.149718 sec/op, 1.54431 GOPS
Conv2DWorkload(batch=1, height=14, width=14, in_filter=256, out_filter=512, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
CPU CONV2D TEST PASSED: Time cost = 0.100589 sec/op, 1.14928 GOPS
Conv2DWorkload(batch=1, height=14, width=14, in_filter=256, out_filter=512, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
CPU CONV2D TEST PASSED: Time cost = 0.00949825 sec/op, 1.35236 GOPS
Conv2DWorkload(batch=1, height=7, width=7, in_filter=512, out_filter=512, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
CPU CONV2D TEST PASSED: Time cost = 0.19252 sec/op, 1.20097 GOPS
Conv2DWorkload(batch=1, height=56, width=56, in_filter=64, out_filter=64, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
[03:30:53] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00601877 sec/op, 38.415 GOPS
Conv2DWorkload(batch=1, height=56, width=56, in_filter=64, out_filter=128, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
[03:30:54] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00315548 sec/op, 36.6364 GOPS
Conv2DWorkload(batch=1, height=56, width=56, in_filter=64, out_filter=128, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
[03:30:55] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00156176 sec/op, 8.22471 GOPS
Conv2DWorkload(batch=1, height=28, width=28, in_filter=128, out_filter=128, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
[03:32:49] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00539227 sec/op, 42.8782 GOPS
Conv2DWorkload(batch=1, height=28, width=28, in_filter=128, out_filter=256, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
[03:32:52] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00278832 sec/op, 41.4606 GOPS
Conv2DWorkload(batch=1, height=28, width=28, in_filter=128, out_filter=256, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
[03:32:53] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00114291 sec/op, 11.2389 GOPS
Conv2DWorkload(batch=1, height=14, width=14, in_filter=256, out_filter=256, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
[03:32:56] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00506864 sec/op, 45.616 GOPS
Conv2DWorkload(batch=1, height=14, width=14, in_filter=256, out_filter=512, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
[03:33:01] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00410674 sec/op, 28.1502 GOPS
Conv2DWorkload(batch=1, height=14, width=14, in_filter=256, out_filter=512, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
[03:33:06] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
VTA CONV2D TEST PASSED: Time cost = 0.00115081 sec/op, 11.1617 GOPS
Conv2DWorkload(batch=1, height=7, width=7, in_filter=512, out_filter=512, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
[03:33:14] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
Traceback (most recent call last):
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 318, in <module>
test_conv2d(device="vta")
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 313, in test_conv2d
vta.testing.run(_run)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/vta/python/vta/testing/utils.py", line 74, in run
run_func(env, remote)
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 311, in _run
run_conv2d(env, remote, wl, target)
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 241, in run_conv2d
data_arr = tvm.nd.array(data_np, dev)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/runtime/ndarray.py", line 598, in array
return empty(arr.shape, arr.dtype, device).copyfrom(arr)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/runtime/ndarray.py", line 183, in copyfrom
check_call(_LIB.TVMArrayCopyFromBytes(self.handle, data, nbytes))
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/base.py", line 348, in check_call
raise get_last_ffi_error()
tvm._ffi.base.TVMError: std: :bad_alloc
Exception ignored in: <function NDArrayBase.__del__ at 0x7f6fa241bee0>
Traceback (most recent call last):
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/_ctypes/ndarray.py", line 82, in __del__
check_call(_LIB.TVMArrayFree(self.handle))
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/base.py", line 348, in check_call
raise get_last_ffi_error()
tvm._ffi.base.TVMError: std: :bad_alloc
terminate called without an active exception
中止 (コアダンプ)
# ResNet18 workloads
resnet_wkls = [
# Workloads of resnet18 on imagenet
# ('resnet-18.C1', Workload(env.BATCH, 224, 224, 3, 64, 7, 7, 3, 3, 2, 2)),
("resnet-18.C2", Workload(env.BATCH, 56, 56, 64, 64, 3, 3, 1, 1, 1, 1)),
("resnet-18.C3", Workload(env.BATCH, 56, 56, 64, 128, 3, 3, 1, 1, 2, 2)),
("resnet-18.C4", Workload(env.BATCH, 56, 56, 64, 128, 1, 1, 0, 0, 2, 2)),
("resnet-18.C5", Workload(env.BATCH, 28, 28, 128, 128, 3, 3, 1, 1, 1, 1)),
("resnet-18.C6", Workload(env.BATCH, 28, 28, 128, 256, 3, 3, 1, 1, 2, 2)),
("resnet-18.C7", Workload(env.BATCH, 28, 28, 128, 256, 1, 1, 0, 0, 2, 2)),
("resnet-18.C8", Workload(env.BATCH, 14, 14, 256, 256, 3, 3, 1, 1, 1, 1)),
("resnet-18.C9", Workload(env.BATCH, 14, 14, 256, 512, 3, 3, 1, 1, 2, 2)),
("resnet-18.C10", Workload(env.BATCH, 14, 14, 256, 512, 1, 1, 0, 0, 2, 2)),
("resnet-18.C11", Workload(env.BATCH, 7, 7, 512, 512, 3, 3, 1, 1, 1, 1)),
]
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
[sudo] password for xilinx:
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 38302)
INFO:root:Program FPGA with 1x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 38302)
INFO:RPCServer:connection from ('192.168.3.10', 38304)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 38304)
INFO:RPCServer:connection from ('192.168.3.10', 38326)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwjfhx19n/conv2d.o
INFO:RPCServer:Finish serving ('192.168.3.10', 38326)
INFO:RPCServer:connection from ('192.168.3.10', 38328)
INFO:root:Program FPGA with 1x16_i8w8a32_15_15_18_17.bit
INFO:root:Skip reconfig_runtime due to same config.
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpv36gde1g/conv2d.o
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_topi_conv2d_transpose.py
Conv2DTransposeWorkload(batch=4, height=4, width=4, in_filter=1024, out_filter=512, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_transpose_nchw.arm_cpu', ('TENSOR', (4, 1024, 4, 4), 'int8'), ('TENSOR', (1024, 512, 4, 4), 'int8'), (2, 2), (1, 1, 1, 1), 'int32', (0, 0)). A fallback configuration is used, which may bring great performance regression.
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
CPU CONV2D TEST PASSED: Time cost = 6.65868 sec/op, 0.645018 GOPS
Conv2DTransposeWorkload(batch=4, height=8, width=8, in_filter=512, out_filter=256, hkernel=4, wkernel=4, hpad=1, wpad=1, hstride=2, wstride=2, o_hpad=0, o_wpad=0)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_transpose_nchw.arm_cpu', ('TENSOR', (4, 512, 8, 8), 'int8'), ('TENSOR', (512, 256, 4, 4), 'int8'), (2, 2), (1, 1, 1, 1), 'int32', (0, 0)). A fallback configuration is used, which may bring great performance regression.
Traceback (most recent call last):
File "vta/tests/python/integration/test_benchmark_topi_conv2d_transpose.py", line 304, in <module>
test_conv2d_transpose(device="arm_cpu")
File "vta/tests/python/integration/test_benchmark_topi_conv2d_transpose.py", line 300, in test_conv2d_transpose
vta.testing.run(_run)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/vta/python/vta/testing/utils.py", line 74, in run
run_func(env, remote)
File "vta/tests/python/integration/test_benchmark_topi_conv2d_transpose.py", line 298, in _run
run_conv2d_transpose(env, remote, wl, target)
File "vta/tests/python/integration/test_benchmark_topi_conv2d_transpose.py", line 232, in run_conv2d_transpose
kernel_arr = tvm.nd.array(kernel_np, dev)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/runtime/ndarray.py", line 598, in array
return empty(arr.shape, arr.dtype, device).copyfrom(arr)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/runtime/ndarray.py", line 183, in copyfrom
check_call(_LIB.TVMArrayCopyFromBytes(self.handle, data, nbytes))
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/base.py", line 348, in check_call
raise get_last_ffi_error()
tvm._ffi.base.TVMError: Traceback (most recent call last):
68: 0xffffffffffffffff
67: 0x00005636a1bd91c6
66: __libc_start_main
65: Py_BytesMain
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Modules/main.c:1141
64: Py_RunMain
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Modules/main.c:695
63: pymain_run_python
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Modules/main.c:616
62: pymain_run_file
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Modules/main.c:391
61: PyRun_SimpleFileExFlags
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/pythonrun.c:472
60: pyrun_simple_file
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/pythonrun.c:439
59: pyrun_file
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/pythonrun.c:1085
58: run_mod
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/pythonrun.c:1188
57: run_eval_code_obj
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/pythonrun.c:1166
56: PyEval_EvalCode
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:718
55: PyEval_EvalCodeEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4327
54: _PyEval_EvalCodeWithName
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4298
53: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
52: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3515
51: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
50: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:127
49: _PyFunction_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:436
48: _PyEval_EvalCodeWithName
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4298
47: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
46: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3469
45: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
44: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:127
43: _PyFunction_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:411
42: function_code_fastcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:284
41: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
40: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3500
39: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
38: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:127
37: _PyFunction_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:436
36: _PyEval_EvalCodeWithName
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4298
35: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
34: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3500
33: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
32: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:127
31: _PyFunction_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:436
30: _PyEval_EvalCodeWithName
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4298
29: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
28: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3469
27: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
26: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:127
25: _PyFunction_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:436
24: _PyEval_EvalCodeWithName
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4298
23: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
22: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3486
21: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
20: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:127
19: _PyFunction_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:411
18: function_code_fastcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:284
17: PyEval_EvalFrameEx
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:741
16: _PyEval_EvalFrameDefault
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:3469
15: call_function
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Python/ceval.c:4963
14: _PyObject_Vectorcall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Include/cpython/abstract.h:125
13: _PyObject_MakeTpCall
at /home/builder/ktietz/cos6/ci_cos6/python_1622837047642/work/Objects/call.c:159
12: PyCFuncPtr_call
at /usr/local/src/conda/python-3.8.10/Modules/_ctypes/_ctypes.c:4201
11: _ctypes_callproc
at /usr/local/src/conda/python-3.8.10/Modules/_ctypes/callproc.c:1264
10: _call_function_pointer
at /usr/local/src/conda/python-3.8.10/Modules/_ctypes/callproc.c:921
9: ffi_call_int
8: ffi_call_unix64
7: TVMArrayCopyFromBytes
6: tvm::runtime::ArrayCopyFromBytes(DLTensor*, void const*, unsigned long)
5: tvm::runtime::RPCDeviceAPI::CopyDataFromTo(DLTensor*, DLTensor*, void*)
4: tvm::runtime::RPCClientSession::CopyToRemote(void*, DLTensor*, unsigned long)
3: tvm::runtime::RPCEndpoint::CopyToRemote(void*, DLTensor*, unsigned long)
2: tvm::runtime::RPCEndpoint::HandleUntilReturnEvent(bool, std::function<void (tvm::runtime::TVMArgs)>)
1: tvm::runtime::SockChannel::Send(void const*, unsigned long)
0: tvm::support::Socket::Error(char const*)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/src/runtime/rpc/../../support/socket.h", line 362
TVMError: Socket SockChannel::Send Error:No route to host
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
[sudo] password for xilinx:
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 32880)
INFO:root:Program FPGA with 4x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 32880)
INFO:RPCServer:connection from ('192.168.3.10', 32898)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 32898)
INFO:RPCServer:connection from ('192.168.3.10', 32912)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwkvrv8yf/conv2d_transpose.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpwkvrv8yf/conv2d_transpose.o
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_topi_conv2d.py
Conv2DWorkload(batch=4, height=56, width=56, in_filter=64, out_filter=64, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 64, 56, 56), 'int8'), ('TENSOR', (64, 64, 3, 3), 'int8'), (1, 1), (1, 1, 1, 1), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
CPU CONV2D TEST PASSED: Time cost = 1.07412 sec/op, 0.861024 GOPS
Conv2DWorkload(batch=4, height=56, width=56, in_filter=64, out_filter=128, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 64, 56, 56), 'int8'), ('TENSOR', (128, 64, 3, 3), 'int8'), (2, 2), (1, 1, 1, 1), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
CPU CONV2D TEST PASSED: Time cost = 0.301574 sec/op, 1.53336 GOPS
Conv2DWorkload(batch=4, height=56, width=56, in_filter=64, out_filter=128, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 64, 56, 56), 'int8'), ('TENSOR', (128, 64, 1, 1), 'int8'), (2, 2), (0, 0, 0, 0), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
CPU CONV2D TEST PASSED: Time cost = 0.0260106 sec/op, 1.97536 GOPS
Conv2DWorkload(batch=4, height=28, width=28, in_filter=128, out_filter=128, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 128, 28, 28), 'int8'), ('TENSOR', (128, 128, 3, 3), 'int8'), (1, 1), (1, 1, 1, 1), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
CPU CONV2D TEST PASSED: Time cost = 0.627201 sec/op, 1.47456 GOPS
Conv2DWorkload(batch=4, height=28, width=28, in_filter=128, out_filter=256, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=2, wstride=2)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 128, 28, 28), 'int8'), ('TENSOR', (256, 128, 3, 3), 'int8'), (2, 2), (1, 1, 1, 1), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
CPU CONV2D TEST PASSED: Time cost = 0.20858 sec/op, 2.217 GOPS
Conv2DWorkload(batch=4, height=28, width=28, in_filter=128, out_filter=256, hkernel=1, wkernel=1, hpad=0, wpad=0, hstride=2, wstride=2)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 128, 28, 28), 'int8'), ('TENSOR', (256, 128, 1, 1), 'int8'), (2, 2), (0, 0, 0, 0), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
CPU CONV2D TEST PASSED: Time cost = 0.0400033 sec/op, 1.2844 GOPS
Conv2DWorkload(batch=4, height=14, width=14, in_filter=256, out_filter=256, hkernel=3, wkernel=3, hpad=1, wpad=1, hstride=1, wstride=1)
Cannot find config for target=llvm -keys=arm_cpu,cpu -device=arm_cpu -link-params=0 -mattr=+neon -model=pynq -mtriple=armv7a-linux-eabi, workload=('conv2d_nchw_spatial_pack.arm_cpu', ('TENSOR', (4, 256, 14, 14), 'int8'), ('TENSOR', (256, 256, 3, 3), 'int8'), (1, 1), (1, 1, 1, 1), (1, 1), 'int32'). A fallback configuration is used, which may bring great performance regression.
Traceback (most recent call last):
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 317, in <module>
test_conv2d(device="arm_cpu")
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 313, in test_conv2d
vta.testing.run(_run)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/vta/python/vta/testing/utils.py", line 74, in run
run_func(env, remote)
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 311, in _run
run_conv2d(env, remote, wl, target)
File "vta/tests/python/integration/test_benchmark_topi_conv2d.py", line 236, in run_conv2d
remote.upload(temp.relpath("conv2d.o"))
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/rpc/client.py", line 115, in upload
self._remote_funcs["upload"](target, blob)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
tvm._ffi.base.TVMError: std: :bad_alloc
terminate called without an active exception
中止 (コアダンプ)
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
[sudo] password for xilinx:
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 60956)
INFO:root:Program FPGA with 4x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 60956)
INFO:RPCServer:connection from ('192.168.3.10', 60958)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 60958)
INFO:RPCServer:connection from ('192.168.3.10', 60968)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp9742g63u/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp9742g63u/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp9742g63u/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp9742g63u/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp9742g63u/conv2d.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp9742g63u/conv2d.o
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_gemm.py
========GEMM 128=========
----- GEMM GOPS End-to-End Test-------
[08:33:44] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
NORMAL
Time cost = 0.000112617 sec/op, 37.2441 GOPS
----- GEMM Unit Test-------
[08:33:45] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
NORMAL
Time cost = 8.01812e-05 sec/op, 52.3103 GOPS
----- ALU Unit Test-------
[08:33:45] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
NORMAL
Time cost = 8.0531e-05 sec/op, 52.0831 GOPS
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
[sudo] password for xilinx:
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 48668)
INFO:root:Program FPGA with 4x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 48668)
INFO:RPCServer:connection from ('192.168.3.10', 48670)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 48670)
INFO:RPCServer:connection from ('192.168.3.10', 48672)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpgrsttaur/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpgrsttaur/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpgrsttaur/gemm.o
INFO:RPCServer:Finish serving ('192.168.3.10', 48672)
このサイトに 2x16_i8w8a32_15_15_18_17.bit が無いということか?というと、もしかして、このサイトの 1x16_i8w8a32_15_15_18_17.bit を前回使用したのか?RuntimeError: https://github.com/uwsampl/vta-distro/raw/master/bitstreams/pynq/0.0.2/2x16_i8w8a32_15_15_18_17.bit is not available
xilinx@pynq:~/tvm/build$ cmake ..
-- Forbidding undefined symbols in shared library, using -Wl,--no-undefined on platform Linux
-- Build with RPC support...
-- Build with Graph Executor support...
-- Build with profiler...
-- Build with AOT Executor support...
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- VTA build with VTA_HW_PATH=/home/xilinx/tvm/3rdparty/vta-hw
-- Build VTA runtime with target: pynq
-- Build with contrib.random
-- Build with contrib.sort
-- Build with contrib.hybriddump
-- Git found: /usr/bin/git
-- Found TVM_GIT_COMMIT_HASH=27b0aad5a55254815a076dbcacb53e9725019f9d
-- Found TVM_GIT_COMMIT_TIME=2022-06-14 19:30:28 +0900
-- Autoset: USE_LIBBACKTRACE=ON in Linux
-- Building with libbacktrace...
-- Building with TVM Map...
-- Build with thread support...
-- Configuring done
-- Generating done
-- Build files have been written to: /home/xilinx/tvm/build
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_gemm.py
========GEMM 128=========
----- GEMM GOPS End-to-End Test-------
[04:55:33] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
NORMAL
Time cost = 0.000163101 sec/op, 25.7161 GOPS
----- GEMM Unit Test-------
[04:55:34] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
NORMAL
Time cost = 8.06747e-05 sec/op, 51.9903 GOPS
----- ALU Unit Test-------
[04:55:35] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
NORMAL
Time cost = 8.25765e-05 sec/op, 50.7929 GOPS
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
INFO:RPCServer:bind to 0.0.0.0:9091
^[[AINFO:RPCServer:connection from ('192.168.3.10', 47570)
INFO:root:Program FPGA with 2x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 47570)
INFO:RPCServer:connection from ('192.168.3.10', 47572)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 47572)
INFO:RPCServer:connection from ('192.168.3.10', 47574)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpn3nef_yo/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpn3nef_yo/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmpn3nef_yo/gemm.o
INFO:RPCServer:Finish serving ('192.168.3.10', 47574)
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_gemm.py
========GEMM 128=========
----- GEMM GOPS End-to-End Test-------
[21:52:57] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
NORMAL
Time cost = 0.000262097 sec/op, 16.0029 GOPS
----- GEMM Unit Test-------
[21:52:57] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
NORMAL
Time cost = 0.000107166 sec/op, 39.1384 GOPS
----- ALU Unit Test-------
[21:52:58] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
NORMAL
Time cost = 8.17991e-05 sec/op, 51.2757 GOPS
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 44642)
INFO:root:Program FPGA with 1x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 44642)
INFO:RPCServer:connection from ('192.168.3.10', 44644)
INFO:root:Skip reconfig_runtime due to same config.
INFO:RPCServer:Finish serving ('192.168.3.10', 44644)
INFO:RPCServer:connection from ('192.168.3.10', 44654)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp88sv43s5/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp88sv43s5/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmp88sv43s5/gemm.o
INFO:RPCServer:Finish serving ('192.168.3.10', 44654)
のエラーが発生した。268: TVM_LOG_DEBUG ill-formed at position 16: invalid level: "1;relay/ir/transform.cc=1"
エラーが発生した。AttributeError: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so: undefined symbol: VTARuntimeShutdown
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_gemm.py
========GEMM 128=========
----- GEMM GOPS End-to-End Test-------
[21:39:13] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
Traceback (most recent call last):
File "vta/tests/python/integration/test_benchmark_gemm.py", line 287, in <module>
test_gemm()
File "vta/tests/python/integration/test_benchmark_gemm.py", line 283, in test_gemm
vta.testing.run(_run)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/vta/python/vta/testing/utils.py", line 74, in run
run_func(env, remote)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 281, in _run
run_gemm_packed(env, remote, 128, 128, 128)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 275, in run_gemm_packed
gemm_normal(False)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 182, in gemm_normal
run_test("NORMAL", print_ir)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 169, in run_test
cost = run_schedule(
File "vta/tests/python/integration/test_benchmark_gemm.py", line 162, in run_schedule
return verify(s)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 85, in verify
data_arr = tvm.nd.array(data_packed, dev)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/runtime/ndarray.py", line 598, in array
return empty(arr.shape, arr.dtype, device).copyfrom(arr)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/runtime/ndarray.py", line 357, in empty
arr = _ffi_api.TVMArrayAllocWithScope(shape, dtype, device, mem_scope)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
tvm.error.RPCError: Traceback (most recent call last):
10: TVMFuncCall
9: _ZN3tvm7runtime13PackedFun
8: tvm::runtime::TypedPackedFunc<tvm::runtime::NDArray (tvm::runtime::ShapeTuple, DLDataType, DLDevice, tvm::runtime::Optional<tvm::runtime::String>)>::AssignTypedLambda<tvm::runtime::NDArray (*)(tvm::runtime::ShapeTuple, DLDataType, DLDevice, tvm::runtime::Optional<tvm::runtime::String>)>(tvm::runtime::NDArray (*)(tvm::runtime::ShapeTuple, DLDataType, DLDevice, tvm::runtime::Optional<tvm::runtime::String>), std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}::operator()(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*) const
7: tvm::runtime::NDArray::Empty(tvm::runtime::ShapeTuple, DLDataType, DLDevice, tvm::runtime::Optional<tvm::runtime::String>)
6: tvm::runtime::RPCDeviceAPI::AllocDataSpace(DLDevice, int, long const*, DLDataType, tvm::runtime::Optional<tvm::runtime::String>)
5: tvm::runtime::RPCClientSession::AllocDataSpace(DLDevice, int, long const*, DLDataType, tvm::runtime::Optional<tvm::runtime::String>)
4: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<tvm::runtime::RPCEndpoint::Init()::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
3: tvm::runtime::RPCEndpoint::HandleUntilReturnEvent(bool, std::function<void (tvm::runtime::TVMArgs)>)
2: tvm::runtime::RPCEndpoint::EventHandler::HandleNextEvent(bool, bool, std::function<void (tvm::runtime::TVMArgs)>)
1: tvm::runtime::RPCEndpoint::EventHandler::HandleProcessPacket(std::function<void (tvm::runtime::TVMArgs)>)
0: tvm::runtime::RPCEndpoint::EventHandler::HandleReturn(tvm::runtime::RPCCode, std::function<void (tvm::runtime::TVMArgs)>)
12: TVMFuncCall
11: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<tvm::runtime::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
10: tvm::runtime::RPCServerLoop(int)
9: tvm::runtime::RPCEndpoint::ServerLoop()
8: tvm::runtime::RPCEndpoint::HandleUntilReturnEvent(bool, std::function<void (tvm::runtime::TVMArgs)>)
7: tvm::runtime::RPCEndpoint::EventHandler::HandleNextEvent(bool, bool, std::function<void (tvm::runtime::TVMArgs)>)
6: tvm::runtime::RPCEndpoint::EventHandler::HandleProcessPacket(std::function<void (tvm::runtime::TVMArgs)>)
5: tvm::runtime::RPCEndpoint::EventHandler::HandleSyscall(tvm::runtime::RPCCode)
4: void tvm::runtime::RPCEndpoint::EventHandler::SysCallHandler<void (*)(tvm::runtime::RPCSession*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>(void (*)(tvm::runtime::RPCSession*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*))
3: tvm::runtime::RPCDevAllocDataWithScope(tvm::runtime::RPCSession*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
2: tvm::runtime::DeviceAPIManager::GetAPI(int, bool)
1: tvm::runtime::DeviceAPIManager::GetAPI(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, bool)
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 62, in ext_dev_callback
return tvm.get_global_func("device_api.ext_dev")()
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
1: TVMFuncCall
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 61, in ext_dev_callback
load_vta_dll()
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 51, in load_vta_dll
logging.info("Loading VTA library: %s", dll_path)
File "/usr/lib/python3.6/logging/__init__.py", line 1900, in info
root.info(msg, *args, **kwargs)
File "/usr/lib/python3.6/logging/__init__.py", line 1306, in info
self._log(INFO, msg, args, **kwargs)
File "/usr/lib/python3.6/logging/__init__.py", line 1441, in _log
exc_info, func, extra, sinfo)
File "/usr/lib/python3.6/logging/__init__.py", line 1411, in makeRecord
sinfo)
File "/usr/lib/python3.6/logging/__init__.py", line 277, in __init__
if (args and len(args) == 1 and isinstance(args[0], collections.Mapping)
File "/usr/lib/python3.6/abc.py", line 184, in __instancecheck__
if subclass in cls._abc_cache:
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/src/runtime/rpc/rpc_endpoint.cc", line 376
RPCError: Error caught from RPC call:
RecursionError: maximum recursion depth exceeded while calling a Python object
INFO:RPCServer:connection from ('192.168.3.10', 42674)
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:RPCServer:load_module /tmp/tmposbwibs0/gemm.o
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
INFO:root:Loading VTA library: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so
Process Process-3:
Traceback (most recent call last):
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/xilinx/tvm/python/tvm/rpc/server.py", line 116, in _serve_loop
_ffi_api.ServerLoop(sockfd)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
AttributeError: Traceback (most recent call last):
4: TVMFuncCall
3: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<tvm::runtime::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
2: tvm::runtime::RPCServerLoop(int)
1: tvm::runtime::RPCEndpoint::ServerLoop()
0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
File "/home/xilinx/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
rv = local_pyfunc(*pyargs)
File "/home/xilinx/tvm/vta/python/vta/exec/rpc_server.py", line 83, in server_shutdown
runtime_dll[0].VTARuntimeShutdown()
File "/usr/lib/python3.6/ctypes/__init__.py", line 361, in __getattr__
func = self.__getitem__(name)
File "/usr/lib/python3.6/ctypes/__init__.py", line 366, in __getitem__
func = self._FuncPtr((name_or_ordinal, self))
AttributeError: /home/xilinx/tvm/vta/python/vta/../../../build/libvta.so: undefined symbol: VTARuntimeShutdown
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm/build$ cmake ..
-- Forbidding undefined symbols in shared library, using -Wl,--no-undefined on platform Linux
-- Build with RPC support...
-- Build with Graph Executor support...
-- Build with profiler...
-- Build with AOT Executor support...
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_MAIN_LIBRARY)
-- VTA build with VTA_HW_PATH=/media/masaaki/Ubuntu_Disk/DNN/tvm/3rdparty/vta-hw
-- Build VTA runtime with target: pynq
-- Found CUDA_TOOLKIT_ROOT_DIR=/usr
-- Found CUDA_CUDA_LIBRARY=/usr/lib/x86_64-linux-gnu/libcuda.so
-- Found CUDA_CUDART_LIBRARY=/usr/lib/x86_64-linux-gnu/libcudart.so
-- Found CUDA_NVRTC_LIBRARY=/usr/lib/x86_64-linux-gnu/libnvrtc.so
-- Found CUDA_CUDNN_INCLUDE_DIRS=
-- Found CUDA_CUDNN_LIBRARY=
-- Found CUDA_CUBLAS_LIBRARY=/usr/lib/x86_64-linux-gnu/libcublas.so
-- Found CUDA_CUBLASLT_LIBRARY=CUDA_CUBLASLT_LIBRARY-NOTFOUND
-- Build with CUDA 9.1 support
-- Link with dynamic LLVM library
-- Found LLVM_INCLUDE_DIRS=/usr/lib/llvm-6.0/include
-- Found LLVM_DEFINITIONS=-D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
-- Found LLVM_LIBS=LLVM
-- Found TVM_LLVM_VERSION=60
-- Build with LLVM 6.0.0
-- Set TVM_LLVM_VERSION=60
-- Build with contrib.random
-- Build with contrib.sort
-- Build with contrib.hybriddump
-- Git found: /usr/bin/git
-- Found TVM_GIT_COMMIT_HASH=27b0aad5a55254815a076dbcacb53e9725019f9d
-- Found TVM_GIT_COMMIT_TIME=2022-06-14 19:30:28 +0900
-- Autoset: USE_LIBBACKTRACE=ON in Linux
-- Building with libbacktrace...
-- Building Relay in debug mode...
-- Building with TVM Map...
-- Build with thread support...
-- Configuring done
-- Generating done
-- Build files have been written to: /media/masaaki/Ubuntu_Disk/DNN/tvm/build
xilinx@pynq:~/tvm$ sudo ./apps/vta_rpc/start_rpc_server.sh
[sudo] password for xilinx:
INFO:RPCServer:bind to 0.0.0.0:9091
INFO:RPCServer:connection from ('192.168.3.10', 36472)
INFO:root:Program FPGA with 1x16_i8w8a32_15_15_18_17.bit
INFO:RPCServer:Finish serving ('192.168.3.10', 36472)
INFO:RPCServer:connection from ('192.168.3.10', 36478)
INFO:root:Rebuild runtime:
output=/home/xilinx/tvm/vta/python/vta/../../../build/libvta.so,
cflags=-O2
-std=c++14
-I/home/xilinx/tvm/include
-I/home/xilinx/tvm/3rdparty/vta-hw/include
-I/home/xilinx/tvm/3rdparty/dlpack/include
-I/home/xilinx/tvm/3rdparty/dmlc-core/include
-DVTA_TARGET=pynq
-DVTA_HW_VER=0.0.2
-DVTA_LOG_INP_WIDTH=3
-DVTA_LOG_WGT_WIDTH=3
-DVTA_LOG_ACC_WIDTH=5
-DVTA_LOG_BATCH=0
-DVTA_LOG_BLOCK=4
-DVTA_LOG_UOP_BUFF_SIZE=15
-DVTA_LOG_INP_BUFF_SIZE=15
-DVTA_LOG_WGT_BUFF_SIZE=18
-DVTA_LOG_ACC_BUFF_SIZE=17
-DVTA_LOG_BLOCK_IN=4
-DVTA_LOG_BLOCK_OUT=4
-DVTA_LOG_OUT_WIDTH=3
-DVTA_LOG_OUT_BUFF_SIZE=15
-DVTA_LOG_BUS_WIDTH=6
-DVTA_IP_REG_MAP_RANGE=0x1000
-DVTA_FETCH_ADDR=0x43C00000
-DVTA_LOAD_ADDR=0x43C01000
-DVTA_COMPUTE_ADDR=0x43C02000
-DVTA_STORE_ADDR=0x43C03000
-DVTA_FETCH_INSN_COUNT_OFFSET=16
-DVTA_FETCH_INSN_ADDR_OFFSET=24
-DVTA_LOAD_INP_ADDR_OFFSET=16
-DVTA_LOAD_WGT_ADDR_OFFSET=24
-DVTA_COMPUTE_DONE_WR_OFFSET=16
-DVTA_COMPUTE_DONE_RD_OFFSET=24
-DVTA_COMPUTE_UOP_ADDR_OFFSET=32
-DVTA_COMPUTE_BIAS_ADDR_OFFSET=40
-DVTA_STORE_OUT_ADDR_OFFSET=16
-DVTA_COHERENT_ACCESSES=true,
source=/home/xilinx/tvm/3rdparty/vta-hw/src/pynq/pynq_driver.cc,
ldflags=-L/usr/lib
-l:libcma.so
INFO:RPCServer:Finish serving ('192.168.3.10', 36478)
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/integration/test_benchmark_gemm.py
========GEMM 128=========
----- GEMM GOPS End-to-End Test-------
[04:23:13] /media/masaaki/Ubuntu_Disk/DNN/tvm/src/tir/transforms/arg_binder.cc:95: Warning: Trying to bind buffer to another one with lower alignment requirement required_alignment=256, provided_alignment=128
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py:263: UserWarning: target_host parameter is going to be deprecated. Please pass in tvm.target.Target(target, host=target_host) instead.
warnings.warn(
Traceback (most recent call last):
File "vta/tests/python/integration/test_benchmark_gemm.py", line 287, in <module>
test_gemm()
File "vta/tests/python/integration/test_benchmark_gemm.py", line 283, in test_gemm
vta.testing.run(_run)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/vta/python/vta/testing/utils.py", line 74, in run
run_func(env, remote)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 281, in _run
run_gemm_packed(env, remote, 128, 128, 128)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 275, in run_gemm_packed
gemm_normal(False)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 182, in gemm_normal
run_test("NORMAL", print_ir)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 169, in run_test
cost = run_schedule(
File "vta/tests/python/integration/test_benchmark_gemm.py", line 162, in run_schedule
return verify(s)
File "vta/tests/python/integration/test_benchmark_gemm.py", line 63, in verify
mod = vta.build(
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/vta/python/vta/build_module.py", line 125, in build
return tvm.build(*args, **kwargs)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/driver/build_module.py", line 278, in build
rt_mod_host = _driver_ffi.tir_to_runtime(annotated_mods, target_host)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
raise get_last_ffi_error()
tvm._ffi.base.TVMError: Traceback (most recent call last):
3: TVMFuncCall
2: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<tvm::runtime::TypedPackedFunc<tvm::runtime::Module (tvm::runtime::Map<tvm::Target, tvm::IRModule, void, void> const&, tvm::Target)>::AssignTypedLambda<tvm::{lambda(tvm::runtime::Map<tvm::Target, tvm::IRModule, void, void> const&, tvm::Target)#6}>(tvm::{lambda(tvm::runtime::Map<tvm::Target, tvm::IRModule, void, void> const&, tvm::Target)#6}, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)::{lambda(tvm::runtime::TVMArgs const&, tvm::runtime::TVMRetValue*)#1}> >::Call(tvm::runtime::PackedFuncObj const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, tvm::runtime::TVMRetValue)
1: tvm::TIRToRuntime(tvm::runtime::Map<tvm::Target, tvm::IRModule, void, void> const&, tvm::Target const&)
0: tvm::codegen::Build(tvm::IRModule, tvm::Target)
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/src/target/codegen.cc", line 58
TVMError:
---------------------------------------------------------------
An error occurred during the execution of TVM.
For more information, please see: https://tvm.apache.org/docs/errors.html
---------------------------------------------------------------
Check failed: (bf != nullptr) is false: target.build.llvm is not enabled
(base) masaaki@masaaki-H110M4-M01:/media/masaaki/Ubuntu_Disk/DNN/tvm$ python3 vta/tests/python/pynq/test_program_rpc.py
Traceback (most recent call last):
File "vta/tests/python/pynq/test_program_rpc.py", line 18, in <module>
import tvm
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/__init__.py", line 26, in <module>
from ._ffi.base import TVMError, __version__, _RUNTIME_ONLY
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/__init__.py", line 28, in <module>
from .base import register_error
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/base.py", line 71, in <module>
_LIB, _LIB_NAME = _load_lib()
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/base.py", line 51, in _load_lib
lib_path = libinfo.find_lib_path()
File "/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/_ffi/libinfo.py", line 146, in find_lib_path
raise RuntimeError(message)
RuntimeError: Cannot find libraries: ['libtvm.so', 'libtvm_runtime.so']
List of candidates:
/usr/local/systemc/2.3.3/lib-linux64/libtvm.so
/media/masaaki/Ubuntu_Disk/DNN/tvm/libtvm.so
/usr/local/verilator/v4.202/bin/libtvm.so
/home/masaaki/anaconda3/bin/libtvm.so
/home/masaaki/anaconda3/condabin/libtvm.so
/usr/local/sbin/libtvm.so
/usr/local/bin/libtvm.so
/usr/sbin/libtvm.so
/usr/bin/libtvm.so
/sbin/libtvm.so
/bin/libtvm.so
/usr/games/libtvm.so
/usr/local/games/libtvm.so
/snap/bin/libtvm.so
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/libtvm.so
/media/masaaki/Ubuntu_Disk/DNN/libtvm.so
/usr/local/systemc/2.3.3/lib-linux64/libtvm_runtime.so
/media/masaaki/Ubuntu_Disk/DNN/tvm/libtvm_runtime.so
/usr/local/verilator/v4.202/bin/libtvm_runtime.so
/home/masaaki/anaconda3/bin/libtvm_runtime.so
/home/masaaki/anaconda3/condabin/libtvm_runtime.so
/usr/local/sbin/libtvm_runtime.so
/usr/local/bin/libtvm_runtime.so
/usr/sbin/libtvm_runtime.so
/usr/bin/libtvm_runtime.so
/sbin/libtvm_runtime.so
/bin/libtvm_runtime.so
/usr/games/libtvm_runtime.so
/usr/local/games/libtvm_runtime.so
/snap/bin/libtvm_runtime.so
/media/masaaki/Ubuntu_Disk/DNN/tvm/python/tvm/libtvm_runtime.so
/media/masaaki/Ubuntu_Disk/DNN/libtvm_runtime.so
INFO: [SIM 2] *************** CSIM start ***************
INFO: [SIM 4] CSIM will launch GCC as the compiler.
make[1]: ディレクトリ '/media/masaaki/Ubuntu_Disk/DNN/tvm/3rdparty/vta-hw/build/hardware/xilinx/hls/pynq_1x16_i8w8a32_15_15_18_17/vta_sim/soln/csim/build' に入ります
Compiling ../../../../../../../../../tests/hardware/common/test_lib.cc in debug mode
Compiling ../../../../../../../../../hardware/xilinx/sim/vta_test.cc in debug mode
Compiling ../../../../../../../../../hardware/xilinx/src/vta.cc in debug mode
Generating csim.exe
make[1]: ディレクトリ '/media/masaaki/Ubuntu_Disk/DNN/tvm/3rdparty/vta-hw/build/hardware/xilinx/hls/pynq_1x16_i8w8a32_15_15_18_17/vta_sim/soln/csim/build' から出ます
=====================================================================================
INFO - ALU test of min imm: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of min imm: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of max imm: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of max imm: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of add imm: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of add imm: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of shr: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of shr: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of min: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of min: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of max: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of max: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of add: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of add: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of shr: batch=16, vector_size=128, uop_compression=1
INFO - ALU test successful!
=====================================================================================
INFO - ALU test of shr: batch=16, vector_size=128, uop_compression=0
INFO - ALU test successful!
=====================================================================================
INFO - Blocked GEMM test: batch=256, channels=256, block=64, uop_comp=0, vt=2
INFO - Blocked GEMM test successful!
=====================================================================================
INFO - Blocked GEMM test: batch=256, channels=256, block=64, uop_comp=0, vt=1
INFO - Blocked GEMM test successful!
=====================================================================================
INFO - Blocked GEMM test: batch=4, in_channels=64, out_channels=64, uop_comp=0
INFO - Blocked GEMM test successful!
INFO: [SIM 1] CSim done with 0 errors.
INFO: [SIM 3] *************** CSIM finish ***************
xilinx@pynq:~$ git clone --recursive https://github.com/apache/tvm
Cloning into 'tvm'...
remote: Enumerating objects: 143895, done.
remote: Counting objects: 100% (270/270), done.
remote: Compressing objects: 100% (178/178), done.
remote: Total 143895 (delta 133), reused 180 (delta 90), pack-reused 143625
Receiving objects: 100% (143895/143895), 65.22 MiB | 3.33 MiB/s, done.
Resolving deltas: 100% (108130/108130), done.
Checking out files: 100% (4277/4277), done.
Submodule '3rdparty/cutlass' (https://github.com/NVIDIA/cutlass.git) registered for path '3rdparty/cutlass'
Submodule 'dlpack' (https://github.com/dmlc/dlpack.git) registered for path '3rdparty/dlpack'
Submodule 'dmlc-core' (https://github.com/dmlc/dmlc-core.git) registered for path '3rdparty/dmlc-core'
Submodule '3rdparty/libbacktrace' (https://github.com/tlc-pack/libbacktrace.git) registered for path '3rdparty/libbacktrace'
Submodule '3rdparty/rang' (https://github.com/agauniyal/rang.git) registered for path '3rdparty/rang'
Submodule '3rdparty/vta-hw' (https://github.com/apache/tvm-vta.git) registered for path '3rdparty/vta-hw'
Cloning into '/home/xilinx/tvm/3rdparty/cutlass'...
remote: Enumerating objects: 15745, done.
remote: Counting objects: 100% (4213/4213), done.
remote: Compressing objects: 100% (846/846), done.
remote: Total 15745 (delta 3532), reused 3823 (delta 3328), pack-reused 11532
Receiving objects: 100% (15745/15745), 19.02 MiB | 3.12 MiB/s, done.
Resolving deltas: 100% (11512/11512), done.
Cloning into '/home/xilinx/tvm/3rdparty/dlpack'...
remote: Enumerating objects: 437, done.
remote: Counting objects: 100% (112/112), done.
remote: Compressing objects: 100% (47/47), done.
remote: Total 437 (delta 83), reused 70 (delta 63), pack-reused 325
Receiving objects: 100% (437/437), 1.69 MiB | 3.09 MiB/s, done.
Resolving deltas: 100% (147/147), done.
Cloning into '/home/xilinx/tvm/3rdparty/dmlc-core'...
remote: Enumerating objects: 6253, done.
remote: Counting objects: 100% (117/117), done.
remote: Compressing objects: 100% (78/78), done.
remote: Total 6253 (delta 45), reused 64 (delta 24), pack-reused 6136
Receiving objects: 100% (6253/6253), 1.64 MiB | 2.52 MiB/s, done.
Resolving deltas: 100% (3791/3791), done.
Cloning into '/home/xilinx/tvm/3rdparty/libbacktrace'...
remote: Enumerating objects: 459, done.
remote: Counting objects: 100% (3/3), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 459 (delta 0), reused 1 (delta 0), pack-reused 456
Receiving objects: 100% (459/459), 1.08 MiB | 2.79 MiB/s, done.
Resolving deltas: 100% (334/334), done.
Cloning into '/home/xilinx/tvm/3rdparty/rang'...
remote: Enumerating objects: 731, done.
remote: Counting objects: 100% (27/27), done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 731 (delta 7), reused 15 (delta 3), pack-reused 704
Receiving objects: 100% (731/731), 264.09 KiB | 1.67 MiB/s, done.
Resolving deltas: 100% (369/369), done.
Cloning into '/home/xilinx/tvm/3rdparty/vta-hw'...
remote: Enumerating objects: 3312, done.
remote: Counting objects: 100% (330/330), done.
remote: Compressing objects: 100% (137/137), done.
remote: Total 3312 (delta 258), reused 193 (delta 193), pack-reused 2982
Receiving objects: 100% (3312/3312), 1.43 MiB | 2.38 MiB/s, done.
Resolving deltas: 100% (1442/1442), done.
Submodule path '3rdparty/cutlass': checked out 'c2ee13a0fe99241b0e798ce647acf98e237f1d0c'
Submodule path '3rdparty/dlpack': checked out 'ddeb264880a1fa7e7be238ab3901a810324fbe5f'
Submodule path '3rdparty/dmlc-core': checked out '09511cf9fe5ff103900a5eafb50870dc84cc17c8'
Submodule path '3rdparty/libbacktrace': checked out '08f7c7e69f8ea61a0c4151359bc8023be8e9217b'
Submodule path '3rdparty/rang': checked out 'cabe04d6d6b05356fa8f9741704924788f0dd762'
Submodule path '3rdparty/vta-hw': checked out '36a91576edf633479c78649e050f18dd2ddc8103'
xilinx@pynq:~/tvm/build$ cmake ..
-- The C compiler identification is GNU 7.3.0
-- The CXX compiler identification is GNU 7.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Forbidding undefined symbols in shared library, using -Wl,--no-undefined on platform Linux
-- Build with RPC support...
-- Build with Graph Executor support...
-- Build with profiler...
-- Build with AOT Executor support...
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- VTA build with VTA_HW_PATH=/home/xilinx/tvm/3rdparty/vta-hw
-- Build VTA runtime with target: pynq
-- Build with contrib.random
-- Build with contrib.sort
-- Build with contrib.hybriddump
-- Git found: /usr/bin/git
-- Found TVM_GIT_COMMIT_HASH=27b0aad5a55254815a076dbcacb53e9725019f9d
-- Found TVM_GIT_COMMIT_TIME=2022-06-14 19:30:28 +0900
-- Performing Test SUPPORT_CXX14
-- Performing Test SUPPORT_CXX14 - Success
-- Autoset: USE_LIBBACKTRACE=ON in Linux
-- Building with libbacktrace...
-- Building with TVM Map...
-- Build with thread support...
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Check if compiler accepts -pthread
-- Check if compiler accepts -pthread - yes
-- Found Threads: TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/xilinx/tvm/build
TVM: オープンソースの深層学習用コンパイラスタック
VTA: TVM を FPGA 上で動かすための、カスタマイズ可能なアーキテクチャ
// medianf_pf.cpp
// 2022/05/30 by marsee
// I referred to http://independence-sys.net/main/?p=2209
// 2022/06/06 : Added udmabuf0.
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <unistd.h>
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgcodecs/imgcodecs.hpp"
#define BLOCK_SIZE 4096
#define MIDEAIN_REG_ADDR 0x80020000
#define AXI_DMA_REG_ADDR 0x80010000
#define IMAGE_WIDTH 800
#define IMAGE_HEIGHT 600
#define MAT_IMGAGE_BUF (IMAGE_WIDTH*IMAGE_HEIGHT*3)
#define MM2S_CONTROL_REG 0x00
#define MM2S_STATUS_REG (0x4 >> 2)
#define MM2S_START_ADDR (0x18 >> 2)
#define MM2S_LENGTH_REG (0x28 >> 2)
#define S2MM_CONTROL_REG (0x30 >> 2)
#define S2MM_STATUS_REG (0x34 >> 2)
#define S2MM_DESTINATION_ADDR (0x48 >> 2)
#define S2MM_LENGTH_REG (0x58 >> 2)
// bits 1 - idle
#define MM2S_IDLE_MASK 0xfffffffd
#define S2MM_IDLE_MASK 0xfffffffd
#define MEDIAN_CONTROL 0x00
#define MEDIAN_FUNCTION_R (0x18 >> 2)
#define MEDIAN_ROW_SIZE (0x20 >> 2)
#define MEDIAN_COL_SIZE (0x28 >> 2)
volatile uint32_t *reg;
int main(int argc, char **argv){
int fd;
volatile uint32_t *median_reg, *axi_dma_reg;
volatile uint8_t *pict_buf;
uint32_t phy_addr;
uint32_t phy_addr_base;
int addr, wd;
uint32_t write_data;
cv::Mat in_img, median_img;
int fd_udmabuf;
u_int32_t fd_paddr;
unsigned char attr[1024];
unsigned long phys_addr;
if (argc != 3){
fprintf(stderr, "Usage : ./median_filer <input image file name> <output image file name>\n");
exit(-1);
}
in_img = cv::imread(argv[1], 1);
median_img.create(cv::Size(in_img.cols, in_img.rows), CV_8UC3);
fd = open("/dev/mem", O_RDWR | O_SYNC);
if (fd == -1){
fprintf(stderr, "/dev/mem open error\n");
exit(-1);
}
// median_filter registers
median_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, MIDEAIN_REG_ADDR );
if ((int64_t)median_reg == -1){
fprintf(stderr,"/dev/mem map error for median_filter registers\n");
exit(-1);
}
// axi_dma registers
axi_dma_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, AXI_DMA_REG_ADDR );
if ((int64_t)axi_dma_reg == -1){
fprintf(stderr,"/dev/mem map error for axi_dma registers\n");
exit(-1);
}
// udmabuf0
fd_udmabuf = open("/dev/udmabuf0", O_RDWR | O_SYNC); // frame_buffer, The chache is disabled.
if (fd_udmabuf == -1){
fprintf(stderr, "/dev/udmabuf0 open errorn");
exit(-1);
}
// phys_addr of udmabuf0
fd_paddr = open("/sys/class/u-dma-buf/udmabuf0/phys_addr", O_RDONLY);
if (fd_paddr == -1){
fprintf(stderr, "/sys/class/u-dma-buf/udmabuf0/phys_addr open errorn");
exit(-1);
}
read(fd_paddr, (void *)attr, 1024);
sscanf((const char *)attr, "%lx", &phys_addr);
close(fd_paddr);
printf("phys_addr = %x\n", (unsigned int)phys_addr);
uint32_t total_bytes = in_img.total()*in_img.channels();
uint32_t in_img_total_bytes = (in_img.total()*in_img.channels()+4096) & 0xfffff000; // 4k byte boundary
printf("in_img_total_bytes = %d\n", in_img_total_bytes);
pict_buf = (volatile uint8_t *)mmap(NULL, in_img_total_bytes*2, PROT_READ|PROT_WRITE, MAP_SHARED, fd_udmabuf, 0);
if (pict_buf == MAP_FAILED){
fprintf(stderr, "org_mat mmap error\n");
exit(-1);
}
// Copy Mat data from in_img to org_mat
uint8_t *in_img_data = in_img.data;
for(int i=0; i<total_bytes; i++){
pict_buf[i] = in_img_data[i];
}
// Resetting DMA
axi_dma_reg[MM2S_CONTROL_REG] = 4; // MM2S DMA Controll Reg. Reset
axi_dma_reg[S2MM_CONTROL_REG] = 4; // S2MM DMA Control Reg. Reset
// Halting Run DMA
axi_dma_reg[MM2S_CONTROL_REG] = 1; // MM2S DMA Controll Reg. Run
axi_dma_reg[S2MM_CONTROL_REG] = 1; // S2MM DMA Control Reg. Run
uint32_t median_mat_addr = (uint32_t)phys_addr+in_img_total_bytes;
uint32_t org_mat_addr = (uint32_t)phys_addr;
// axi dma settings
axi_dma_reg[S2MM_DESTINATION_ADDR] = median_mat_addr;
axi_dma_reg[MM2S_START_ADDR] = org_mat_addr;
axi_dma_reg[S2MM_LENGTH_REG] = total_bytes;
axi_dma_reg[MM2S_LENGTH_REG] = total_bytes;
// median filter start
median_reg[MEDIAN_COL_SIZE] = in_img.cols;
median_reg[MEDIAN_ROW_SIZE] = in_img.rows;
median_reg[MEDIAN_FUNCTION_R] = 3; // median filter for AXI DMA
median_reg[MEDIAN_CONTROL] = 1; // ap_start
// DMA completion detection
uint32_t mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
while(mm2s_status_reg == 0){
mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
}
uint32_t s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
while(s2mm_status_reg == 0){
s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
}
// Copy median image data from median_mat to megian_img
uint8_t *median_img_data = median_img.data;
for(int i=0; i<total_bytes; i++){
median_img_data[i] = pict_buf[in_img_total_bytes+i];
}
// Write to median_filter.jgp
cv::imwrite(argv[2], median_img);
return(0);
}
// medianf_pf.cpp
// 2022/05/30 by marsee
// I referred to http://independence-sys.net/main/?p=2209
// 2022/06/06 : Added udmabuf0.
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <unistd.h>
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgcodecs/imgcodecs.hpp"
#define BLOCK_SIZE 4096
#define MIDEAIN_REG_ADDR 0x80020000
#define AXI_DMA_REG_ADDR 0x80010000
#define IMAGE_WIDTH 800
#define IMAGE_HEIGHT 600
#define MAT_IMGAGE_BUF (IMAGE_WIDTH*IMAGE_HEIGHT*3)
#define MM2S_CONTROL_REG 0x00
#define MM2S_STATUS_REG (0x4 >> 2)
#define MM2S_START_ADDR (0x18 >> 2)
#define MM2S_LENGTH_REG (0x28 >> 2)
#define S2MM_CONTROL_REG (0x30 >> 2)
#define S2MM_STATUS_REG (0x34 >> 2)
#define S2MM_DESTINATION_ADDR (0x48 >> 2)
#define S2MM_LENGTH_REG (0x58 >> 2)
// bits 1 - idle
#define MM2S_IDLE_MASK 0xfffffffd
#define S2MM_IDLE_MASK 0xfffffffd
#define MEDIAN_CONTROL 0x00
#define MEDIAN_FUNCTION_R (0x18 >> 2)
#define MEDIAN_ROW_SIZE (0x20 >> 2)
#define MEDIAN_COL_SIZE (0x28 >> 2)
volatile uint32_t *reg;
int main(int argc, char **argv){
int fd;
volatile uint32_t *median_reg, *axi_dma_reg;
volatile uint8_t *pict_buf;
uint32_t phy_addr;
uint32_t phy_addr_base;
int addr, wd;
uint32_t write_data;
cv::Mat in_img, median_img;
int fd_udmabuf;
u_int32_t fd_paddr;
unsigned char attr[1024];
unsigned long phys_addr;
if (argc != 3){
fprintf(stderr, "Usage : ./median_filer <input image file name> <output image file name>\n");
exit(-1);
}
in_img = cv::imread(argv[1], 1);
median_img.create(cv::Size(in_img.cols, in_img.rows), CV_8UC3);
fd = open("/dev/mem", O_RDWR | O_SYNC);
if (fd == -1){
fprintf(stderr, "/dev/mem open error\n");
exit(-1);
}
// median_filter registers
median_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, MIDEAIN_REG_ADDR );
if ((int64_t)median_reg == -1){
fprintf(stderr,"/dev/mem map error for median_filter registers\n");
exit(-1);
}
// axi_dma registers
axi_dma_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, AXI_DMA_REG_ADDR );
if ((int64_t)axi_dma_reg == -1){
fprintf(stderr,"/dev/mem map error for axi_dma registers\n");
exit(-1);
}
// udmabuf0
fd_udmabuf = open("/dev/udmabuf0", O_RDWR | O_SYNC); // frame_buffer, The chache is disabled.
if (fd_udmabuf == -1){
fprintf(stderr, "/dev/udmabuf0 open errorn");
exit(-1);
}
// phys_addr of udmabuf0
fd_paddr = open("/sys/class/u-dma-buf/udmabuf0/phys_addr", O_RDONLY);
if (fd_paddr == -1){
fprintf(stderr, "/sys/class/u-dma-buf/udmabuf0/phys_addr open errorn");
exit(-1);
}
read(fd_paddr, (void *)attr, 1024);
sscanf((const char *)attr, "%lx", &phys_addr);
close(fd_paddr);
printf("phys_addr = %x\n", (unsigned int)phys_addr);
uint32_t in_img_total_bytes = (in_img.total()*in_img.channels()+4096) & 0xfffff000; // 4k byte boundary
printf("in_img_total_bytes = %d\n", in_img_total_bytes);
pict_buf = (volatile uint8_t *)mmap(NULL, in_img_total_bytes*2, PROT_READ|PROT_WRITE, MAP_SHARED, fd_udmabuf, 0);
if (pict_buf == MAP_FAILED){
fprintf(stderr, "org_mat mmap error\n");
exit(-1);
}
// Copy Mat data from in_img to org_mat
uint8_t *in_img_data = in_img.data;
for(int i=0; i<in_img_total_bytes; i++){
pict_buf[i] = in_img_data[i];
}
// Resetting DMA
axi_dma_reg[MM2S_CONTROL_REG] = 4; // MM2S DMA Controll Reg. Reset
axi_dma_reg[S2MM_CONTROL_REG] = 4; // S2MM DMA Control Reg. Reset
// Halting Run DMA
axi_dma_reg[MM2S_CONTROL_REG] = 0; // MM2S DMA Controll Reg. Halt
axi_dma_reg[S2MM_CONTROL_REG] = 0; // S2MM DMA Control Reg. Halt
uint32_t median_mat_addr = fd_paddr+in_img_total_bytes;
uint32_t org_mat_addr = fd_paddr;
// axi dma settings
axi_dma_reg[S2MM_DESTINATION_ADDR] = median_mat_addr;
axi_dma_reg[MM2S_START_ADDR] = org_mat_addr;
axi_dma_reg[S2MM_LENGTH_REG] = in_img_total_bytes;
axi_dma_reg[MM2S_LENGTH_REG] = in_img_total_bytes;
// median filter start
median_reg[MEDIAN_COL_SIZE] = in_img.cols;
median_reg[MEDIAN_ROW_SIZE] = in_img.rows;
median_reg[MEDIAN_FUNCTION_R] = 3; // median filter for AXI DMA
median_reg[MEDIAN_CONTROL] = 1; // ap_start
// DMA completion detection
uint32_t mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
while(mm2s_status_reg == 0){
mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
}
uint32_t s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
while(s2mm_status_reg == 0){
s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
}
// Copy median image data from median_mat to megian_img
uint8_t *median_img_data = median_img.data;
for(int i=0; i<in_img_total_bytes; i++){
median_img_data[i] = pict_buf[in_img_total_bytes+i];
}
// Write to median_filter.jgp
cv::imwrite(argv[2], median_img);
return(0);
}
になってしまったが、median_filter.jpg は生成された。free(): invalid pointer
Aborted
になってしまったが、median_filter.jpg は生成された。free(): invalid pointer
Aborted
// medianf_pf.cpp
// 2022/05/30 by marsee
// I referred to http://independence-sys.net/main/?p=2209
// 2022/06/06 : Added udmabuf0.
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <unistd.h>
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgcodecs/imgcodecs.hpp"
#define BLOCK_SIZE 4096
#define MIDEAIN_REG_ADDR 0x80020000
#define AXI_DMA_REG_ADDR 0x80010000
#define IMAGE_WIDTH 800
#define IMAGE_HEIGHT 600
#define MAT_IMGAGE_BUF (IMAGE_WIDTH*IMAGE_HEIGHT*3)
#define MM2S_CONTROL_REG 0x00
#define MM2S_STATUS_REG (0x4 >> 2)
#define MM2S_START_ADDR (0x18 >> 2)
#define MM2S_LENGTH_REG (0x28 >> 2)
#define S2MM_CONTROL_REG (0x30 >> 2)
#define S2MM_STATUS_REG (0x34 >> 2)
#define S2MM_DESTINATION_ADDR (0x48 >> 2)
#define S2MM_LENGTH_REG (0x58 >> 2)
// bits 1 - idle
#define MM2S_IDLE_MASK 0xfffffffd
#define S2MM_IDLE_MASK 0xfffffffd
#define MEDIAN_CONTROL 0x00
#define MEDIAN_FUNCTION_R (0x18 >> 2)
#define MEDIAN_ROW_SIZE (0x20 >> 2)
#define MEDIAN_COL_SIZE (0x28 >> 2)
volatile uint32_t *reg;
int main(int argc, char **argv){
int fd;
volatile uint32_t *median_reg, *axi_dma_reg;
volatile uint8_t *org_mat, *median_mat;
uint32_t phy_addr;
uint32_t phy_addr_base;
int addr, wd;
uint32_t write_data;
cv::Mat in_img, median_img;
int fd_udmabuf, fd_paddr;
unsigned char attr[1024];
unsigned long phys_addr;
if (argc != 3){
fprintf(stderr, "Usage : ./median_filer <input image file name> <output image file name>\n");
exit(-1);
}
in_img = cv::imread(argv[1], 1);
median_img.create(cv::Size(in_img.cols, in_img.rows), CV_8UC3);
fd = open("/dev/mem", O_RDWR | O_SYNC);
if (fd == -1){
fprintf(stderr, "/dev/mem open error\n");
exit(-1);
}
// median_filter registers
median_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, MIDEAIN_REG_ADDR );
if ((int64_t)median_reg == -1){
fprintf(stderr,"/dev/mem map error for median_filter registers\n");
exit(-1);
}
// axi_dma registers
axi_dma_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, AXI_DMA_REG_ADDR );
if ((int64_t)axi_dma_reg == -1){
fprintf(stderr,"/dev/mem map error for axi_dma registers\n");
exit(-1);
}
// udmabuf0
fd_udmabuf = open("/dev/udmabuf0", O_RDWR | O_SYNC); // frame_buffer, The chache is disabled.
if (fd_udmabuf == -1){
fprintf(stderr, "/dev/udmabuf0 open errorn");
exit(-1);
}
// phys_addr of udmabuf0
fd_paddr = open("/sys/class/u-dma-buf/udmabuf0/phys_addr", O_RDONLY);
if (fd_paddr == -1){
fprintf(stderr, "/sys/class/u-dma-buf/udmabuf0/phys_addr open errorn");
exit(-1);
}
read(fd_paddr, (void *)attr, 1024);
sscanf((const char *)attr, "%lx", &phys_addr);
close(fd_paddr);
printf("phys_addr = %x\n", (unsigned int)phys_addr);
uint32_t in_img_total_bytes = (in_img.total()*in_img.channels()+4096) & 0xfffff000; // 4k byte boundary
printf("in_img_total_bytes = %d\n", in_img_total_bytes);
org_mat = (volatile uint8_t *)mmap(NULL, in_img_total_bytes, PROT_READ|PROT_WRITE, MAP_SHARED, fd_udmabuf, 0);
if (org_mat == MAP_FAILED){
fprintf(stderr, "org_mat mmap error\n");
exit(-1);
}
median_mat = (volatile uint8_t *)mmap(NULL, in_img_total_bytes, PROT_READ|PROT_WRITE, MAP_SHARED, fd_udmabuf, 0);
if (median_mat == MAP_FAILED){
fprintf(stderr, "median_mat mmap error\n");
exit(-1);
}
// Copy Mat data from in_img to org_mat
uint8_t *in_img_data = in_img.data;
for(int i=0; i<in_img_total_bytes; i++){
org_mat[i] = in_img_data[i];
}
// Resetting DMA
axi_dma_reg[MM2S_CONTROL_REG] = 4; // MM2S DMA Controll Reg. Reset
axi_dma_reg[S2MM_CONTROL_REG] = 4; // S2MM DMA Control Reg. Reset
// Halting Run DMA
axi_dma_reg[MM2S_CONTROL_REG] = 0; // MM2S DMA Controll Reg. Halt
axi_dma_reg[S2MM_CONTROL_REG] = 0; // S2MM DMA Control Reg. Halt
uint64_t median_mat_addr = (uint64_t)median_mat;
uint64_t org_mat_addr = (uint64_t)org_mat;
// axi dma settings
axi_dma_reg[S2MM_DESTINATION_ADDR] = (uint32_t)(median_mat_addr & 0xffffffff);
axi_dma_reg[MM2S_START_ADDR] = (uint32_t)(org_mat_addr & 0xffffffff);
axi_dma_reg[S2MM_LENGTH_REG] = in_img_total_bytes;
axi_dma_reg[MM2S_LENGTH_REG] = in_img_total_bytes;
// median filter start
median_reg[MEDIAN_COL_SIZE] = in_img.cols;
median_reg[MEDIAN_ROW_SIZE] = in_img.rows;
median_reg[MEDIAN_FUNCTION_R] = 1; // median filter
median_reg[MEDIAN_CONTROL] = 1; // ap_start
// DMA completion detection
uint32_t mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
while(mm2s_status_reg == 0){
mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
}
uint32_t s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
while(s2mm_status_reg == 0){
s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
}
// Copy median image data from median_mat to megian_img
uint8_t *median_img_data = median_img.data;
for(int i=0; i<in_img_total_bytes; i++){
median_img_data[i] = median_mat[i];
}
// Write to median_filter.jgp
cv::imwrite(argv[2], median_img);
return(0);
}
// medianf_pf.cpp
// 2022/05/30 by marsee
// I referred to http://independence-sys.net/main/?p=2209
//
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <unistd.h>
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgcodecs/imgcodecs.hpp"
#define BLOCK_SIZE 4096
#define MIDEAIN_REG_ADDR 0x80020000
#define AXI_DMA_REG_ADDR 0x80010000
#define IMAGE_WIDTH 800
#define IMAGE_HEIGHT 600
#define MAT_IMGAGE_BUF (IMAGE_WIDTH*IMAGE_HEIGHT*3)
#define MM2S_CONTROL_REG 0x00
#define MM2S_STATUS_REG (0x4 >> 2)
#define MM2S_START_ADDR (0x18 >> 2)
#define MM2S_LENGTH_REG (0x28 >> 2)
#define S2MM_CONTROL_REG (0x30 >> 2)
#define S2MM_STATUS_REG (0x34 >> 2)
#define S2MM_DESTINATION_ADDR (0x48 >> 2)
#define S2MM_LENGTH_REG (0x58 >> 2)
// bits 1 - idle
#define MM2S_IDLE_MASK 0xfffffffd
#define S2MM_IDLE_MASK 0xfffffffd
#define MEDIAN_CONTROL 0x00
#define MEDIAN_FUNCTION_R (0x18 >> 2)
#define MEDIAN_ROW_SIZE (0x20 >> 2)
#define MEDIAN_COL_SIZE (0x28 >> 2)
volatile uint32_t *reg;
int main(int argc, char **argv){
int fd;
uint32_t *median_reg, *axi_dma_reg;
uint8_t *org_mat, *median_mat;
uint32_t phy_addr;
uint32_t phy_addr_base;
int addr, wd;
uint32_t write_data;
cv::Mat in_img, median_img;
if (argc != 3){
fprintf(stderr, "Usage : ./median_filer <input image file name> <output image file name>\n");
exit(-1);
}
in_img = cv::imread(argv[1], 1);
median_img.create(cv::Size(in_img.cols, in_img.rows), CV_8UC3);
fd = open("/dev/mem", O_RDWR | O_SYNC);
if (fd == -1){
fprintf(stderr, "/dev/mem open error\n");
exit(-1);
}
// median_filter registers
median_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, MIDEAIN_REG_ADDR );
if ((int64_t)median_reg == -1){
fprintf(stderr,"/dev/mem map error for median_filter registers\n");
exit(-1);
}
// axi_dma registers
axi_dma_reg = (uint32_t *)mmap(NULL, BLOCK_SIZE,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, AXI_DMA_REG_ADDR );
if ((int64_t)axi_dma_reg == -1){
fprintf(stderr,"/dev/mem map error for axi_dma registers\n");
exit(-1);
}
uint32_t in_img_total_bytes = (in_img.total()*in_img.channels()+4096) & 0xfffff000; // 4k byte boundary
// original image data
org_mat = (uint8_t *)mmap(NULL, in_img_total_bytes,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, MIDEAIN_REG_ADDR );
if ((int64_t)org_mat == -1){
fprintf(stderr,"/dev/mem map error for original image data\n");
exit(-1);
}
// median filter image data
median_mat = (uint8_t *)mmap(NULL, in_img_total_bytes,
PROT_READ | PROT_WRITE, MAP_SHARED,
fd, AXI_DMA_REG_ADDR );
if ((int64_t)median_mat == -1){
fprintf(stderr,"/dev/mem map error for meditan filter image data\n");
exit(-1);
}
// Copy Mat data from in_img to org_mat
uint8_t *in_img_data = in_img.data;
for(int i=0; i<in_img_total_bytes; i++){
org_mat[i] = in_img_data[i];
}
// Resetting DMA
axi_dma_reg[MM2S_CONTROL_REG] = 4; // MM2S DMA Controll Reg. Reset
axi_dma_reg[S2MM_CONTROL_REG] = 4; // S2MM DMA Control Reg. Reset
// Halting Run DMA
axi_dma_reg[MM2S_CONTROL_REG] = 0; // MM2S DMA Controll Reg. Halt
axi_dma_reg[S2MM_CONTROL_REG] = 0; // S2MM DMA Control Reg. Halt
uint64_t median_mat_addr = (uint64_t)median_mat;
uint64_t org_mat_addr = (uint64_t)org_mat;
// axi dma settings
axi_dma_reg[S2MM_DESTINATION_ADDR] = (uint32_t)(median_mat_addr & 0xffffffff);
axi_dma_reg[MM2S_START_ADDR] = (uint32_t)(org_mat_addr & 0xffffffff);
axi_dma_reg[S2MM_LENGTH_REG] = in_img_total_bytes;
axi_dma_reg[MM2S_LENGTH_REG] = in_img_total_bytes;
// median filter start
median_reg[MEDIAN_COL_SIZE] = in_img.cols;
median_reg[MEDIAN_ROW_SIZE] = in_img.rows;
median_reg[MEDIAN_FUNCTION_R] = 1; // median filter
median_reg[MEDIAN_CONTROL] = 1; // ap_start
// DMA completion detection
uint32_t mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
while(mm2s_status_reg == 0){
mm2s_status_reg = axi_dma_reg[MM2S_STATUS_REG] & MM2S_IDLE_MASK;
}
uint32_t s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
while(s2mm_status_reg == 0){
s2mm_status_reg = axi_dma_reg[S2MM_STATUS_REG] & S2MM_IDLE_MASK;
}
// Copy median image data from median_mat to megian_img
uint8_t *median_img_data = median_img.data;
for(int i=0; i<in_img_total_bytes; i++){
median_img_data[i] = median_mat[i];
}
// Write to median_filter.jgp
cv::imwrite("median_filter.jgp", median_img);
return(0);
}
// sobel_filter.cpp
// 2022/05/31 by marsee
//
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgcodecs/imgcodecs.hpp"
#include "opencv2/features2d.hpp"
int main(int argc, char** argv){
cv::Mat in_img;
if(argc < 3){
printf("opencv_test [input files] [output files]\n");
exit(0);
}
in_img = cv::imread(argv[1], 0);
cv::Mat sobelx, sobely, sobel;
cv::Mat sobel_result;
cv::Sobel(in_img, sobelx, CV_32F, 1, 0, 3);
cv::Sobel(in_img, sobely, CV_32F, 0, 1, 3);
cv::magnitude(sobelx, sobely, sobel);
cv::convertScaleAbs(sobel, sobel_result, 1, 0);
cv::imwrite(argv[2], sobel_result);
return(0);
}
// median_filter.cpp
// 2022/05/31 by marsee
//
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgcodecs/imgcodecs.hpp"
#include "opencv2/features2d.hpp"
int main(int argc, char** argv){
cv::Mat in_img;
if(argc < 3){
printf("opencv_test [input files] [output files]\n");
exit(0);
}
in_img = cv::imread(argv[1], 1);
cv::Mat medianf;
medianBlur(in_img, medianf, 3);
cv::imwrite(argv[2], medianf);
return(0);
}
日 | 月 | 火 | 水 | 木 | 金 | 土 |
---|---|---|---|---|---|---|
- | - | - | 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 | - | - |