Hey,
I might have been not really clear about my question.
I do get that this “engine”:
engine = trt_runtime.deserialize_cuda_engine(engine_data)
is an object created by the command from the function “build_engine”.
What I don’t get is that this function isn’t created as a method for a class “Engine” so why do the author use this import command
import engine as eng
at the beginning of the script and then use:
engine = eng.build_engine(onnx_path,engine_name)
It doesn’t make sense for me.
Either they created a class named “Engine” and implemented a method called “build_engine” but then they must create an instance like:
eng = Engine()
engine = eng.build_engine(onnx_path,engine_name)
Or they use directly the function “build_engine” like this:
engine = build_engine(onnx_path,engine_name)
I don’t understand the mix being made here and that’s one of the reason I can’t reproduce the execution.
Also did you have a look on the error I get from the linked issue ?
Thanks
[EDIT]: I went through the workflow showed on the "Speeding up DeepLearning " link, step by step, to spot which command is a problem, and I found it.
>>> context.execute(batch_size=1,bindings=[int(dinput1),int(doutput)])
[TensorRT] ERROR: ../rtSafe/safeContext.cpp (133) - Cudnn Error in configure: 7 (CUDNN_STATUS_MAPPING_ERROR)
[TensorRT] ERROR: FAILED_EXECUTION: std::exception
False
The loading of engine is working, the creation and allocation of buffer to send the image to GPU also, but it’s when I want to execute the inference that the problem occurs.
What do you think of the error ?
Thanks