IPluginRegistry

class tensorrt.IPluginRegistry

注册插件创建器。

变量:
  • plugin_creator_list – 所有已注册的插件创建器。

  • error_recorderIErrorRecorder 应用程序实现的用于 TensorRT 对象的错误报告接口。

  • parent_search_enabled – 布尔变量,指示是否启用父级搜索。默认为 True。

acquire_plugin_resource(self: tensorrt.tensorrt.IPluginRegistry, key: str, resource: tensorrt.tensorrt.IPluginResource) tensorrt.tensorrt.IPluginResource

获取针对提供的密钥注册的插件资源的句柄。

参数:

key: 用于标识资源的密钥。

参数:

resource: 插件资源对象。该对象只需在此方法返回之前有效,因为只有此对象的克隆版本将由 TRT 注册。不能为空。

deregister_creator(*args, **kwargs)

重载函数。

  1. deregister_creator(self: tensorrt.tensorrt.IPluginRegistry, creator: tensorrt.tensorrt.IPluginCreator) -> bool

    注销先前注册的、继承自 IPluginCreator 的插件创建器。

    由于可能需要限制插件的数量,此函数提供了一种机制来删除在 TensorRT 中注册的插件创建器。由 creator 指定的插件创建器将从 TensorRT 中移除,并且不再被跟踪。

    参数 creator:

    IPluginCreator 实例。

    返回值:

    True 如果插件创建器已注销,False 如果在注册表中未找到或由于其他原因无法注销。

  2. deregister_creator(self: tensorrt.tensorrt.IPluginRegistry, creator: tensorrt.tensorrt.IPluginCreatorInterface) -> bool

    注销先前注册的插件创建器。

    由于可能需要限制插件的数量,此函数提供了一种机制来删除在 TensorRT 中注册的插件创建器。由 creator 指定的插件创建器将从 TensorRT 中移除,并且不再被跟踪。

    参数 creator:

    插件创建器实例。

    返回值:

    True 如果插件创建器已注销,False 如果在注册表中未找到或由于其他原因无法注销。

deregister_library(self: tensorrt.tensorrt.IPluginRegistry, handle: capsule) None

注销与库关联的插件。加载库时获取的任何资源都将被释放。

参数:

handle: 要注销的插件库句柄。

get_creator(self: tensorrt.tensorrt.IPluginRegistry, type: str, version: str, plugin_namespace: str = '') object

根据类型、版本和命名空间返回插件创建器

参数:
  • type – 插件的类型。

  • version – 插件的版本。

  • plugin_namespace – 插件的命名空间。

返回值:

一个 IPluginCreator

get_plugin_creator(self: tensorrt.tensorrt.IPluginRegistry, type: str, version: str, plugin_namespace: str = '') tensorrt.tensorrt.IPluginCreator

根据类型、版本和命名空间返回插件创建器

警告

如果找到具有匹配名称、版本和命名空间的插件创建器,但不是 IPluginCreator 的后代,则返回 None

参数:
  • type – 插件的类型。

  • version – 插件的版本。

  • plugin_namespace – 插件的命名空间。

返回值:

一个 IPluginCreator

load_library(self: tensorrt.tensorrt.IPluginRegistry, plugin_path: str) capsule

加载并注册插件的共享库。

参数:

plugin_path: 插件库路径。

返回值:

加载的插件库句柄。如果任何插件已注册,则调用将失败并返回 None。

register_creator(*args, **kwargs)

重载函数。

  1. register_creator(self: tensorrt.tensorrt.IPluginRegistry, creator: tensorrt.tensorrt.IPluginCreator, plugin_namespace: str = ‘’) -> bool

    注册实现 IPluginCreator 的插件创建器。

    参数 creator:

    IPluginCreator 实例。

    参数 plugin_namespace:

    插件创建器的命名空间。

    返回值:

    如果已注册任何具有相同名称、版本和命名空间的插件创建器,则为 False。

  2. register_creator(self: tensorrt.tensorrt.IPluginRegistry, creator: tensorrt.tensorrt.IPluginCreatorInterface, plugin_namespace: str = ‘’) -> bool

    注册插件创建器。

    参数 creator:

    插件创建器实例。

    参数 plugin_namespace:

    插件创建器的命名空间。

    返回值:

    如果已注册任何具有相同名称、版本和命名空间的插件创建器,则为 False。

release_plugin_resource(self: tensorrt.tensorrt.IPluginRegistry, key: str) int

减少具有此密钥的资源的引用计数。如果引用计数在递减后变为零,则将在资源上调用 release(),并且密钥将被注销。

参数:

key: 用于注册资源的密钥。

class tensorrt.IPluginResource(self: tensorrt.tensorrt.IPluginResource)

插件接口,用于定义可通过插件注册表共享的自定义资源

clone(self: tensorrt.tensorrt.IPluginResource) tensorrt.tensorrt.IPluginResource

对于非克隆对象,可以跳过资源初始化(如果有),因为只有克隆版本将由 TensorRT 注册。

release(self: tensorrt.tensorrt.IPluginResource) None

这将仅针对从 IPluginResource::clone() 生成的 IPluginResource 对象调用。

在其上调用 release() 的 IPluginResource 对象在 release() 返回后必须仍处于可克隆状态。

tensorrt.get_plugin_registry() detail::accessor<detail::accessor_policies::str_attr>

返回标准运行时的插件注册表

tensorrt.init_libnvinfer_plugins(logger: capsule, namespace: str) bool

初始化所有现有的 TensorRT 插件并将其注册到 IPluginRegistry,并可选择使用命名空间。插件库作者应确保此函数名称对于库是唯一的。应在访问插件注册表之前调用此函数一次。

参数:
  • logger – 用于打印插件注册信息的 Logger。

  • namespace – 用于注册此库中所有插件的命名空间。

tensorrt.get_builder_plugin_registry(arg0: tensorrt.EngineCapability) tensorrt.tensorrt.IPluginRegistry

返回用于为指定运行时构建引擎的插件注册表