How is the Tensor RT engine file name created

Hi NVidia team,

We are using Tensor RT as execution provider of ONNX RT engine and we are caching the optimized TRT engine files in order to speed up the load of the NN model in memory.
We are wondering how is the cached TRT engine file name created?
We see the name of the NN model and some number. Is it some hash?
For some models also .profile file is created. Could you please explain?

If this is more of a question for Microsoft ONNX RT, please let me know.

Thanks

Hi,
Request you to share the ONNX model and the script if not shared already so that we can assist you better.
Alongside you can try few things:

  1. validating your model with the below snippet

check_model.py

import sys
import onnx
filename = yourONNXmodel
model = onnx.load(filename)
onnx.checker.check_model(model).
2) Try running your model with trtexec command.

In case you are still facing issue, request you to share the trtexec “”–verbose"" log for further debugging
Thanks!

I guess this answer belongs to different topic High RAM consumption with CUDA and TensorRT on Jetson Xavier NX - #3 by AastaLLL

Hi, Could you please answer my question regarding TRT engine file name?

Thanks

Hi @marek.lipovsky,

If we understood your query correctly, then the name is defined by us while serializing the engine. While using trtexec we define the name of the serialized engine in the command using --saveEngine, else we define it in the code.

Thank you.

Hi @spolisetty,

Understand. When it is defined in the code (not by --saveEngine option) how is the file name built? What values are used?

Thanks

@marek.lipovsky,

Please refer Developer guide, “sample.engine” will define the name of file we save.
https://docs.nvidia.com/deeplearning/tensorrt/archives/tensorrt-801/developer-guide/index.html#serial_model_python