cyrusbehr / tensorrt-cpp-api

TensorRT C++ API Tutorial
MIT License
577 stars 72 forks source link

Integer output compatibility #27

Closed SoroushMaleki closed 8 months ago

SoroushMaleki commented 10 months ago

Hi there!

I wanted to send a huge thanks for this amazing repo. Honestly, the Nvidia examples are not that clear to grasp as you mentioned in your awesome video. You saved us a lot of time and I am super thankful. I just wanted to point out a minor problem, which I ran into while running a semantic segmentation model's engine using your code.

Since this code assumes "float" output types, it becomes incompatible with networks that have an integer output type. For example, if the output layer has an Argmax operation, the output of the network will be of type int32_t and to make the tensorRT runtime code compatible, one must should change the output buffer type to int32_t instead of float. Otherwise, all of the outputs will be 0.

Anyway, thank you for your amazing work once again and I wish you all the best :)

cyrusbehr commented 10 months ago

Hi @SoroushMaleki thank you for the positive feedback. Would you like to create a PR for the change you are proposing? Ideally a mechanism that would be compatible with both float and int output models. I will give you credit as a contributor to the project if you do so.

cyrusbehr commented 8 months ago

Hi @SoroushMaleki closing this issue because I've created a new feature request ticket to track this. I'll add support soon: https://github.com/cyrusbehr/tensorrt-cpp-api/issues/38