Repository navigation
v0.4.0
Changes
tensoracle::cubin::PluginBaseaccepts aPluginIOdeclaration as its fourth constructor argument.PluginIO::inputslists oneTensorSpec(TensorRTtypeandformat) per input in network order,PluginIO::outputdeclares the single output's type and format, andshape_input_indexselects the input whose shape the output copies. The base class uses the declaration for format negotiation, output types and shapes, and the count, type, and format checks during configuration and shape changes. A plugin can now declare, for example, two fp16 / HWC8 inputs and one fp16 / HWC8 output.- Omitting the declaration keeps the previous behavior: one fp32 / LINEAR input and output, with the output shaped like input 0. The three-argument constructor call remains valid.
- Source change for derived plugins:
validate_shapenow receives every input's dimensions:validate_shape(nvinfer1::Dims const* inputs, std::int32_t input_count, nvinfer1::Dims const& output) const noexcept. Plugins that override the previousvalidate_shape(input, output)must update the signature. - For configurations the declaration cannot express, such as multiple outputs or computed output shapes, developers can override the virtual V3 methods in a derived class or ask tensoracle's maintainers to extend the declaration.
- The documentation explains how
graph_versioncovers caller values outside the cache identity.
The Python API is unchanged.
Install
pip install tensoracle==0.4.0Documentation: https://sync-dev-org.github.io/tensoracle/