rknn-toolkit2
rknn-toolkit2 copied to clipboard
free(): double free detected in tcache 2
I am working with bilstm model in pytorch and I want to convert it to rknn in order to run in RK3588. Since rknn_2 havent support lstm yet. So I convert it to onnx (according to doc, lstm in onnx is supported). However, I got stuck when build rknn model. The bug:
I sparse weight ...
I sparse weight done.
I
I rknn building ...
I RKNN: librknnc version: 1.3.0 (c193be371@2022-05-04T20:23:58)
D RKNN: [13:22:35.828] RKNN is invoked
free(): double free detected in tcache 2
Aborted (core dumped)
Here is my code:
import os
import traceback
import time
import numpy as np
from rknn.api import RKNN
ONNX_MODEL = "./weights/test.onnx"
RKNN_MODEL = "./weights/test.rknn"
if __name__ == "__main__":
rknn = RKNN(verbose=True)
rknn.config(target_platform="rk3588s")
if not os.path.exists(ONNX_MODEL):
print("ONNX model file not found: " + ONNX_MODEL)
exit(1)
ret = rknn.load_onnx(ONNX_MODEL)
if ret != 0:
print("load onnx model failed")
exit(ret)
ret = rknn.build(do_quantization=False, dataset="./rknn_modules/dataset.txt")
print("build model: {}".format(ret))
if ret != 0:
print("Build RKNN failed")
exit(ret)
ret = rknn.export_rknn(RKNN_MODEL)
if ret != 0:
print("Export rknn failed")
exit(ret)
inp = np.ones((1, 8000))
ret = rknn.init_runtime()
if ret != 0:
print("Fail to init runtime")
exit(ret)
out = rknn.inferece(inputs=[inp])
print(out)
print(out.shape)
Here is my onnx model: https://drive.google.com/file/d/1eDCpRxAl0qkaNhEM5zIYVZ8XvEv2KybR/view?usp=sharing