‘tensorrt.tensorrt.Builder‘ object has no attribute ‘build_cuda_engine‘

问题简述:

AttributeError: 'tensorrt.tensorrt.Builder' object has no attribute 'build_cuda_engine'

原因:

tensorrt版本大于等于7时,不再使用build_cuda_engine。

解决办法:

print('[info] Building an engine...')
if TRT_VERSION_MAJOR >= 7:
  # Create an optimization profile (see Section 7.2 of https://docs.nvidia.com/deeplearning/sdk/pdf/TensorRT-Developer-Guide.pdf).
  profile = builder.create_optimization_profile()
  # FIXME: Hardcoded for ImageNet. The minimum/optimum/maximum dimensions of a dynamic input tensor are the same.
  # profile.set_shape(input_tensor_name, (1, 3, 224, 224), (max_batch_size, 3, 224, 224), (max_batch_size, 3, 224, 224))

  config = builder.create_builder_config()
  config.add_optimization_profile(profile)

  trt_model_engine  = builder.build_engine(network, config)
  trt_model_context = trt_model_engine.create_execution_context()

else:
  # if trt version is below 7 then use the build_cuda_engine
  trt_model_engine  = builder.build_cuda_engine(network)
  trt_model_context = trt_model_engine.create_execution_context()

# 来源:
# https://www.codegrepper.com/code-examples/python/AttributeError%3A+%27tensorrt.tensorrt.Builder%27+object+has+no+attribute+%27build_cuda_engine%27

你可能感兴趣的:(tensorrt,深度学习,python)