Skip to main content

High-level Architecture

The plugin bridges three data models: MLIA standardized output, native Model Explorer graph collections, and the embedded visualizer's graph and node-data inputs.

ETRecord uses this same pipeline through a private format integration that owns source-collection selection, optional companion/compiler views and presentation policy, including its additional chain mapping view. Shared ExecuTorch artifact reading and extraction of recorded identities and relationships belong to mlia-converters-pytorch. Neural Technology attributes and aggregates runtime samples, decodes VGF payloads and publishes compiler relationships. Model Explorer consumes those standardized results. See ETRecord profiling.

System view​

Use the mouse wheel or pinch to zoom, drag to pan, or use the diagram controls. Press Escape or move focus outside the diagram to exit interaction.

Main components​

ComponentResponsibility
Analysis pluginRegisters the CLI option, rejects obsolete plugin settings, validates standardized output, and chooses build or open behavior.
Source-model adapter layerSelects an adapter from the model suffix, normalizes one graph collection, and establishes canonical source-operator node references.
Format integrationSupplies format-specific source identity, supplementary graph collections, entity references and presentation settings to the shared writers.
Hierarchy graph generationDiscovers result-local entity-kind paths and renders Model Explorer namespace graphs without changing standardized output.
Overlay generationConverts placement, status, metrics, checks, and advice into graph-scoped node data.
Navigation generationRelates source nodes, generated nodes, and MLIA entity IDs with collection-, graph-, and node-qualified references.
BundlerReads the manifest, embeds every graph and overlay with the visualizer runtime, and selects an initial split view.

The artifact writer accepts supplementary graph contributions through the same serialization, metric projection and navigation functions as generated graphs. The default integration retains the existing layout, aggregation and initial pane-selection rules. ExecuTorch-specific adapter reference translation, companion integrity checks and view policy live in _artifacts/etrecord.py. Artifact reading and compiler relationships are produced before presentation, through core CLI and Python analysis APIs. The bundler consumes an optional graph reference from the manifest; it does not select views by format-specific display names.

Identity and scope​

A node ID alone is not globally unique. Internal correlations use a tuple of graph-collection label, graph ID, and node ID. Node-data overlays are also scoped to the graph collections whose addressable node or namespace keys they match. This prevents identical graph or node IDs in separate collections from being treated as the same object.