Project: /_project.yaml Book: /_book.yaml

fuchsia.perfmon.cpu

PROTOCOLS

Controller {:#Controller}

Defined in fuchsia.perfmon.cpu/perfmon.fidl

GetProperties {:#GetProperties}

Fetch the performance monitor properties of the system.

Request

Response

Initialize {:#Initialize}

Create a trace, allocating the needed trace buffers and other resources. “other resources” is basically a catch-all for other things that will be needed. This does not include reserving the events, that is done later by StageConfig().

Request

Response

Terminate {:#Terminate}

Free all trace buffers and any other resources allocated for the trace. This is also done when the connection is closed. Tracing is first stopped if not already stopped. May be called multiple times.

Request

Response

GetAllocation {:#GetAllocation}

Return the trace allocation configuration, if there is one.

Request

Response

StageConfig {:#StageConfig}

Stage performance monitor specification for a cpu. Must be called with data collection off and after Initialize(). Note: This doesn't actually configure the h/w, this just stages the values for subsequent use by Start().

Request

Response

GetConfig {:#GetConfig}

Fetch performance monitor specification for a cpu, if it exists. Must be called with data collection off and after StageConfig().

Request

Response

GetBufferHandle {:#GetBufferHandle}

Return a handle of a trace buffer, if it exists, and if descriptor is valid. descriptor is (0, 1, 2, ..., num_buffers-1)

Request

Response

Start {:#Start}

Turn on data collection. Must be called after Initialize() + StageConfig() and with data collection off.

Request

Response

Stop {:#Stop}

Turn off data collection. May be called any time after Initialize() has been called and before May be called multiple times.

Request

Response

STRUCTS

Controller_Initialize_Response {:#Controller_Initialize_Response}

Defined in fuchsia.perfmon.cpu/generated

Controller_StageConfig_Response {:#Controller_StageConfig_Response}

Defined in fuchsia.perfmon.cpu/generated

Controller_Start_Response {:#Controller_Start_Response}

Defined in fuchsia.perfmon.cpu/generated

Properties {:#Properties}

Defined in fuchsia.perfmon.cpu/perfmon.fidl

The properties of this system.

EventConfig {:#EventConfig}

Defined in fuchsia.perfmon.cpu/perfmon.fidl

Config {:#Config}

Defined in fuchsia.perfmon.cpu/perfmon.fidl

Passed to StageConfig() to select the data to be collected.

Allocation {:#Allocation}

Defined in fuchsia.perfmon.cpu/perfmon.fidl

The allocation configuration for a data collection run. This is generally the first call to allocate resources for a trace, “trace” is used generically here: == “data collection run”.

UNIONS

Controller_Initialize_Result {:#Controller_Initialize_Result}

Defined in fuchsia.perfmon.cpu/generated

Controller_StageConfig_Result {:#Controller_StageConfig_Result}

Defined in fuchsia.perfmon.cpu/generated

Controller_Start_Result {:#Controller_Start_Result}

Defined in fuchsia.perfmon.cpu/generated

BITS

PropertyFlags {:#PropertyFlags}

Type: uint64

CONSTANTS