Get desktop application:
View/edit binary Protocol Buffers messages
A 'device' is a physical entity in the system and is comprised of several resources.
Used in:
The name of the device.
The id of this device, unique in a single trace.
The resources on this device, keyed by resource_id;
Result proto for HloExtraInfoMap.
Used in:
A map from HLO name to HloExtraInfo.
Result proto for HloExtraInfo.
Used in:
Category of the HLO op given by the compiler.
The long name of the HLO that includes the dimensions.
Result proto for looping-related metrics.
Used in:
The total iteration time in nanoseconds.
The total number of iterations.
The total computation time in nanoseconds.
The total number of computations.
Result proto for OpMetricsDb.
Used in:
A bunch of OpMetricsResults.
Result proto for OpMetrics.
Used in:
True if this OP is executed on the device; False if it is executed on the host.
Name of this OP.
Rank of this OP.
The starting time in cycles of the last instance of this OP executed.
The ending time in cycles of the last instance of this OP executed.
If this OP (say A), is an immediate child of another OP (say B), this field stores the sum of duration in microseconds of A inside B. If A appears more than once in B, the duration of all A's appearances will be added together. This sum will be reset after the self-time of B is calculated so that it can be reused for a new parent OP.
Number of instances that this OP occurred.
Total time in microseconds spent in this OP (accumulated over all of its occurrences).
Total self time in microseconds spent in this OP (accumulated over all of its occurrences).
The total self time as a fraction of sum of all OP's total self time on the host.
Cumulative total self time in fraction on the host.
The total self time as a fraction of sum of all OP's total self time on the device.
Cumulative total self time in fraction on the device.
Total number of FLOPs incurred by this OP.
Total number of bytes accessed by this OP.
Total time in microseconds that special hw unit 1 is occupied by this OP.
Total time in microseconds that special hw unit 2 is occupied by this OP.
Total memory stall time in microseconds.
A 'resource' generally is a specific computation component on a device. These can range from threads on CPUs to specific arithmetic units on hardware devices.
Used in:
The name of the resource.
The id of the resource. Unique within a device.
Result proto for a StepDatabase.
Used in:
A map from core_id to StepSequenceResult.
Result proto for StepInfo.
Used in:
The (micro) step number.
The step duration in picoseconds.
The infeed duration in picoseconds. Can turn into a map if we want a variable number of ops.
Result proto for a sequence of steps.
Used in:
A sequence of StepInfoResults.
Result proto for TfStatsHelper.
The result for the TF-metric database.
The result for the HLO-metric database.
The result for the step database.
The result for the looping-related metrics.
The result for the HloExtraInfoMap.
A 'Trace' contains metadata for the individual traces of a system.
The devices that this trace has information about. Maps from device_id to more data about the specific device.
All trace events capturing in the profiling period.
Used in:
The id of the device that this event occurred on. The full dataset should have this device present in the Trace object.
The id of the resource that this event occurred on. The full dataset should have this resource present in the Device object of the Trace object. A resource_id is unique on a specific device, but not necessarily within the trace.
The name of this trace event.
The timestamp that this event occurred at (in picos since tracing started).
The duration of the event in picoseconds if applicable. Events without duration are called instant events.