Skip to content

Instantly share code, notes, and snippets.

@rmccorm4
Created May 10, 2020 21:19
Show Gist options
  • Save rmccorm4/9eaec017bcdf7480972f36a6c3e5b730 to your computer and use it in GitHub Desktop.
Save rmccorm4/9eaec017bcdf7480972f36a6c3e5b730 to your computer and use it in GitHub Desktop.
# Query input names and shapes from parsed TensorRT network
network_inputs = [network.get_input(i) for i in range(network.num_inputs)]
input_names = [_input.name for _input in network_inputs] # ex: ["actual_input1"]
# Note the original model must have dynamic (-1) dimensions for variable min/opt/max values
# in your profile dimensions such as the batch dimension in this example
input_shapes = [_input.shape for _input in network_inputs] # ex: [(-1, 3, 224, 224)]
max_batch_size = 64
# Create optimization profile for dynamic batch dimension
profile0 = builder.create_optimization_profile()
for name, shape in zip(input_names, input_shapes):
profile0.set_shape(
name, min=(1, *shape[1:]), opt=(max_batch_size, *shape[1:]), max=(max_batch_size, *shape[1:])
)
config.add_optimization_profile(profile0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment