class
OptimizationReport
PythonThe non-normative optimization report, <prefix>report.json.
OptimizationReport()The non-normative optimization report, <prefix>_report.json.
attribute
schema_version
Pythonschema_version: Literal[1] = Field(..., description='Report schema version')attribute
plan_file
Pythonplan_file: str = Field(..., description='The plan this report explains')attribute
kernel_calls
Pythonkernel_calls: ModuleKernelCalls | None = Field(None, description='Emitted CORE call records; null in older reports. Unrecorded operators are not known empty.')attribute
total_macs
Pythontotal_macs: int = Field(..., description='MACs of the convolution, depthwise, fully connected, transpose convolution and batch matmul layers')attribute
operators
Pythonoperators: list[ReportOperator]attribute
measurements
Pythonmeasurements: dict[str, list[MeasurementRecord]] = Field(..., description='Measurements for this target and CPU, keyed by setting; every setting has an entry', json_schema_extra=_per_setting)attribute
constant_placement
Pythonconstant_placement: ConstantPlacement | Noneattribute
hints
Pythonhints: list[Hint]attribute
fp16_overflow
Pythonfp16_overflow: list[Fp16Overflow] = Field(default_factory=list, description='Packed FP16 convolutions fed from a model input through value-preserving operators, with the input magnitude at which a float16 lane block can overflow; empty in older reports')attribute
folded_variables
Pythonfolded_variables: list[FoldedVariable] = Field(default_factory=list, description='Resource variables folded into constants by FOLD_INVARIANT_VARIABLES; empty in older reports')attribute
stream_pool
Pythonstream_pool: ReportStreamPool | None = Field(None, description='memory.stream_pool as configured and as the target requires it, with the layout the schedule produced; null without a pool and in older reports. Its memory, bytes and alignment are stable within report schema version 1 (RFC 0005)')attribute
pieces
Pythonpieces: list[ReportPiece] = Field(default_factory=list, description="Every schedule unit split at the DMA boundary of the pool's memory, counted from the pool base, in unit order; one piece per unit on a target without a boundary; empty without a schedule. Explanatory: may change in any release")