• <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • System Task Manager SDK Reference  5.22
    All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Pages
    Analyzed Graph Primitives

    The following structures provide execution statistics about STM entities such as Runnables, Hyperepochs, Epochs, Resources, and Clients.

    RunInformationFull

    RunInformationFull is a container for information obtained during execution of an STM entity (e.g. a runnable, a hyperepoch). It contains all start and end times of the entity in addition to its aggregate run statistics.

    It has the following fields:

    Field Type Description
    start_times numpy.ndarray A numpy ndarray containing the times at which the associated STM entity began execution. One array entry exists for each frame.
    end_times numpy.ndarray A numpy ndarray containing the times at which the associated STM entity ended execution. One array entry exists for each frame.
    duration numpy.ndarray A numpy ndarray containing the per-frame durations of the associated STM entity. This attribute is equivalent to 'end_times - start_times'. One array entry exists for each frame. A value of 0 (zero) indicates that the given frame was skipped.
    overruns numpy.ndarray A numpy ndarray containing the indices into start_times, end_times, and duration in which a frame overrun occurred.
    skipped_frames numpy.ndarray A numpy ndarray containing the indices into start_times, end_times, and duration in which a frame skip occurred.
    missing_frames numpy.ndarray A numpy ndarray containing the indices into start_times, end_times, and duration in which one or more markers were missing. In this case, we consider the entire frame skipped.
    duration_stats StatisticsWithOverruns Aggregate statistics describing run durations
    overrun_stats Statistics Duration distribution of the runnables which have overrun. This is different from the overrun info within the duration_stats variable above. This shows the duration distribution for only the frames which have overrun, while the prior includes statistics for both overrunning and non-overrunning frames.
    start_time_jitter_stats Statistics A Statistics object describing the jitter in the start times of an STM entity
    can_intentionally_skip bool A boolean indicating whether this run info can have some runs intentionally skipped; because of round robin execution, etc.

    Statistics

    A container for the statistics describing the data obtained during a runtime instance of an STM entity (e.g. a runnable, a hyperepoch). It has the following fields:

    Field Type Description
    num_frames_executed int The number of frames that were executed during the run (frame skips not counted)
    mean_duration float The mean of the frame durations.
    std_duration float The standard deviation of the frame durations.
    percentile_99_duration float The 99th percentile of frame durations.
    max_duration int The maximum frame duration.
    min_duration int The minimum frame duration.

    StatisticsWithOverruns

    A container for the statistics describing the data obtained during a runtime instance of an STM entity (e.g. a runnable, a hyperepoch). Expands upon Statistics by including overrun-related statistics.

    It has the following fields, in addition to the fields described under Statistics:

    Field Type Description
    num_overruns int The number of overruns which occurred.
    overrun_fraction float The fraction of frames which overrun as a float between 0 and 1.
    mean_overprovision float The mean in nanoseconds of the discrepancy between scheduled duration and actual duration (scheduled time / how long the runnable actually took). Note that this value can be negative as overruns occur.
    mean_overprovision_frac float The mean as a fraction of the discrepancy between scheduled duration and actual duration (mean_overprovision / scheduled duration). Note that this value can be negative as overruns occur.

    CriticalPathInfo

    CriticalPathInfo is a container for the critical path information obtained from the STM Schedule and runtime log for a particular Hyperepoch.

    It has the following fields:

    Field Type Description
    path_metrics list(CriticalRunnableMetrics) A list of metrics per runnable in the critical path(s).
    scheduled_path_length int Length of the scheduled critical path in ns
    mean_exec_path_length float Mean of observed critical path length in ns (includes overhead)
    overhead_fraction float Fraction of the critical path contributed by overhead (0 <= overhead_fraction <= 1 )
    resource_utilization dict(str->float) A Dictionary containing the resource type and the fraction of critical path operating on that resource type

    CriticalRunnableMetrics

    A container for the following runnable metrics:

    Field Type Description
    runnable_id str A string indicating the runnable ID
    start_time int The scheduled start time of the runnable in ns
    wcet int The WCET specified in the YAML input to the STM compiler
    mean_exec_time int The mean of measured execution times in ns for this runnable
    mean_exec_time_with_overhead int The mean of measured execution times for this runnable, including STM overhead for scheduling and logging in ns
    mean_overhead int The mean of STM overhead seen for this runnable, in ns.
    resource_type str The type of hardware resource used by this runnable
    人人超碰97caoporen国产