快捷方式

结构体 输入

继承关系

基类

  • public CustomClassHolder

结构体 文档

struct Input : public CustomClassHolder

用于保存输入范围的结构体(由 TensorRT 优化配置文件使用)

此结构体可以保存一个表示输入形状的单个向量,表示静态输入形状,或者保存三个表示允许的最小、最佳和最大输入形状的输入形状集,以用于引擎。

公共函数

inline Input()
TORCHTRT_API Input(std::vector<int64_t> shape, TensorFormat format = TensorFormat::kContiguous)

从向量构造新的 Input 规范对象,用于静态输入大小,可选参数允许用户配置预期的输入形状张量格式。dtype(预期的输入数据类型)默认为 PyTorch/传统 TRT 约定(仅对 FP32 为 FP32,对 FP32 和 FP16 为 FP16,对 Int8 为 FP32)

参数
  • shapeInput 张量形状

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> shape, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

从 c10::ArrayRef(由张量。sizes() 生成的类型)向量构造新的 Input 规范对象,用于静态输入大小,可选参数允许用户配置预期的输入形状张量格式。dtype(预期的输入数据类型)默认为 PyTorch/传统 TRT 约定(仅对 FP32 为 FP32,对 FP32 和 FP16 为 FP16,对 Int8 为 FP32)

参数
  • shapeInput 张量形状

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> shape, DataType dtype, TensorFormat format = TensorFormat::kContiguous)

从向量构造新的 Input 规范对象,用于静态输入大小,可选参数允许用户配置预期的输入形状张量格式。

参数
  • shapeInput 张量形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> shape, DataType dtype, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

从向量构造新的 Input 规范对象,用于静态输入大小,可选参数允许用户配置预期的输入形状张量格式。

参数
  • shapeInput 张量形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> shape, TensorFormat format = TensorFormat::kContiguous)

从 c10::ArrayRef(由张量。sizes() 生成的类型)向量构造新的 Input 规范对象,用于静态输入大小,可选参数允许用户配置预期的输入形状张量格式。dtype(预期的输入数据类型)默认为 PyTorch/传统 TRT 约定(仅对 FP32 为 FP32,对 FP32 和 FP16 为 FP16,对 Int8 为 FP32)

参数
  • shapeInput 张量形状

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> shape, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

从 c10::ArrayRef(由张量。sizes() 生成的类型)向量构造新的 Input 规范对象,用于静态输入大小,可选参数允许用户配置预期的输入形状张量格式。dtype(预期的输入数据类型)默认为 PyTorch/传统 TRT 约定(仅对 FP32 为 FP32,对 FP32 和 FP16 为 FP16,对 Int8 为 FP32)

参数
  • shapeInput 张量形状

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> shape, DataType dtype, TensorFormat format = TensorFormat::kContiguous)

构建一个新的 Input 规格对象,用于从 c10::ArrayRef(由 tensor.sizes() 生成的类型)创建静态输入大小,可选参数允许用户配置预期输入形状张量格式。

参数
  • shapeInput 张量形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> shape, DataType dtype, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

构建一个新的 Input 规格对象,用于从 c10::ArrayRef(由 tensor.sizes() 生成的类型)创建静态输入大小,可选参数允许用户配置预期输入形状张量格式。

参数
  • shapeInput 张量形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> min_shape, std::vector<int64_t> opt_shape, std::vector<int64_t> max_shape, TensorFormat format = TensorFormat::kContiguous)

构建一个新的 Input 规格对象,用于从 c10::ArrayRef(由 tensor.sizes() 生成的类型)创建动态输入大小,用于支持的最小、最优和最大尺寸。dtype(输入的预期数据类型)默认为 PyTorch/传统 TRT 约定(仅限 FP32 则为 FP32,FP32 和 FP16 则为 FP16,Int8 则为 FP32)

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> min_shape, std::vector<int64_t> opt_shape, std::vector<int64_t> max_shape, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

构建一个新的 Input 规格对象,用于从 c10::ArrayRef(由 tensor.sizes() 生成的类型)创建动态输入大小,用于支持的最小、最优和最大尺寸。dtype(输入的预期数据类型)默认为 PyTorch/传统 TRT 约定(仅限 FP32 则为 FP32,FP32 和 FP16 则为 FP16,Int8 则为 FP32)

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> min_shape, std::vector<int64_t> opt_shape, std::vector<int64_t> max_shape, DataType dtype, TensorFormat format = TensorFormat::kContiguous)

使用向量构造一个新的 Input 规格对象,用于动态输入大小,支持最小形状、最优形状和最大形状的向量,可选参数允许用户配置预期输入形状张量格式。

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(std::vector<int64_t> min_shape, std::vector<int64_t> opt_shape, std::vector<int64_t> max_shape, DataType dtype, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

使用向量构造一个新的 Input 规格对象,用于动态输入大小,支持最小形状、最优形状和最大形状的向量,可选参数允许用户配置预期输入形状张量格式。

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> min_shape, c10::ArrayRef<int64_t> opt_shape, c10::ArrayRef<int64_t> max_shape, TensorFormat format = TensorFormat::kContiguous)

构建一个新的 Input 规格对象,用于从 c10::ArrayRef(由 tensor.sizes() 生成的类型)创建动态输入大小,用于支持的最小、最优和最大尺寸。dtype(输入的预期数据类型)默认为 PyTorch/传统 TRT 约定(仅限 FP32 则为 FP32,FP32 和 FP16 则为 FP16,Int8 则为 FP32)

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> min_shape, c10::ArrayRef<int64_t> opt_shape, c10::ArrayRef<int64_t> max_shape, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

构建一个新的 Input 规格对象,用于从 c10::ArrayRef(由 tensor.sizes() 生成的类型)创建动态输入大小,用于支持的最小、最优和最大尺寸。dtype(输入的预期数据类型)默认为 PyTorch/传统 TRT 约定(仅限 FP32 则为 FP32,FP32 和 FP16 则为 FP16,Int8 则为 FP32)

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> min_shape, c10::ArrayRef<int64_t> opt_shape, c10::ArrayRef<int64_t> max_shape, DataType dtype, TensorFormat format = TensorFormat::kContiguous)

使用 c10::ArrayRef(tensor.sizes() 生成的类型)从 c10::ArrayRef 构造一个新的 Input 规格对象,用于动态输入大小,用于支持最小、最优和最大大小。

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(c10::ArrayRef<int64_t> min_shape, c10::ArrayRef<int64_t> opt_shape, c10::ArrayRef<int64_t> max_shape, DataType dtype, std::vector<double> tensor_domain, TensorFormat format = TensorFormat::kContiguous)

使用 c10::ArrayRef(tensor.sizes() 生成的类型)从 c10::ArrayRef 构造一个新的 Input 规格对象,用于动态输入大小,用于支持最小、最优和最大大小。

参数
  • min_shape – 输入张量的最小形状

  • opt_shape – 输入张量的目标优化形状

  • max_shape – 输入张量可接受的最大形状

  • dtype – 预期的输入数据类型(默认为第一个张量计算中权重的类型,如果可检测到则为 Float32,否则为 Float32)

  • tensor_domain – 允许的张量输入范围 [low, high)

  • format – 预期的输入张量格式(默认为 contiguous)

TORCHTRT_API Input(at::Tensor tensor)

使用 PyTorch 张量作为示例,构造一个新的 Input 规格对象。张量的形状、类型和布局会告知规格的值。

注意:您无法通过此方法设置动态形状,必须使用另一种构造函数。

参数

tensor – 作为设置形状、类型和布局的参考张量。

公共成员

std::vector<int64_t> min_shape

引擎可以接受的最小输入大小。

std::vector<int64_t> opt_shape

引擎的最佳输入大小(针对给定内核优化的尺寸,可以接受 min max 范围内任何尺寸)。

std::vector<int64_t> max_shape

引擎可以接受的最大输入大小。

std::vector<int64_t> shape

要提供给 TensorRT 的 Input 形状,在动态形状的情况下,-1 会代替可变维度。

DataType dtype

输入的预期数据类型。

TensorFormat format

输入的预期张量格式。

std::vector<double> tensor_domain

张量输入的预期允许域。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获取问题的解答

查看资源