UNPKG

perfetto-protos

Version:

Perfetto protos exposed via protobuf-es for browser and node

154 lines 5.75 kB
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1"; import type { MeminfoCounters, VmstatCounters } from "../../common/sys_stats_counters_pb"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file protos/perfetto/config/sys_stats/sys_stats_config.proto. */ export declare const file_protos_perfetto_config_sys_stats_sys_stats_config: GenFile; /** * This file defines the configuration for the Linux /proc poller data source, * which injects counters in the trace. * Counters that are needed in the trace must be explicitly listed in the * *_counters fields. This is to avoid spamming the trace with all counters * at all times. * The sampling rate is configurable. All polling rates (*_period_ms) need * to be integer multiples of each other. * OK: [10ms, 10ms, 10ms], [10ms, 20ms, 10ms], [10ms, 20ms, 60ms] * Not OK: [10ms, 10ms, 11ms], [10ms, 15ms, 20ms] * * @generated from message perfetto.protos.SysStatsConfig */ export type SysStatsConfig = Message<"perfetto.protos.SysStatsConfig"> & { /** * Polls /proc/meminfo every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * Cost: 0.3 ms [read] + 0.07 ms [parse + trace injection] * * @generated from field: optional uint32 meminfo_period_ms = 1; */ meminfoPeriodMs: number; /** * If empty all known counters are reported. Otherwise, only the counters * specified below are reported. * * @generated from field: repeated perfetto.protos.MeminfoCounters meminfo_counters = 2; */ meminfoCounters: MeminfoCounters[]; /** * Polls /proc/vmstat every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * Cost: 0.2 ms [read] + 0.3 ms [parse + trace injection] * * @generated from field: optional uint32 vmstat_period_ms = 3; */ vmstatPeriodMs: number; /** * @generated from field: repeated perfetto.protos.VmstatCounters vmstat_counters = 4; */ vmstatCounters: VmstatCounters[]; /** * Pols /proc/stat every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * Cost: 4.1 ms [read] + 1.9 ms [parse + trace injection] * * @generated from field: optional uint32 stat_period_ms = 5; */ statPeriodMs: number; /** * @generated from field: repeated perfetto.protos.SysStatsConfig.StatCounters stat_counters = 6; */ statCounters: SysStatsConfig_StatCounters[]; /** * Polls /sys/devfreq/*\/curfreq every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * This option can be used to record unchanging values. * Updates from frequency changes can come from ftrace/set_clock_rate. * * @generated from field: optional uint32 devfreq_period_ms = 7; */ devfreqPeriodMs: number; /** * Polls /sys/devices/system/cpu/cpu*\/cpufreq/cpuinfo_cur_freq every X ms. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 cpufreq_period_ms = 8; */ cpufreqPeriodMs: number; /** * Polls /proc/buddyinfo every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 buddyinfo_period_ms = 9; */ buddyinfoPeriodMs: number; /** * Polls /proc/diskstats every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 diskstat_period_ms = 10; */ diskstatPeriodMs: number; /** * Polls /proc/pressure/* every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 psi_period_ms = 11; */ psiPeriodMs: number; /** * Polls /sys/class/thermal/* every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 thermal_period_ms = 12; */ thermalPeriodMs: number; /** * Polls /sys/devices/system/cpu/cpu*\/cpuidle/state* every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 cpuidle_period_ms = 13; */ cpuidlePeriodMs: number; /** * Polls device-specific GPU frequency info every X ms, if non-zero. * This is required to be > 10ms to avoid excessive CPU usage. * * @generated from field: optional uint32 gpufreq_period_ms = 14; */ gpufreqPeriodMs: number; }; /** * Describes the message perfetto.protos.SysStatsConfig. * Use `create(SysStatsConfigSchema)` to create a new message. */ export declare const SysStatsConfigSchema: GenMessage<SysStatsConfig>; /** * @generated from enum perfetto.protos.SysStatsConfig.StatCounters */ export declare enum SysStatsConfig_StatCounters { /** * @generated from enum value: STAT_UNSPECIFIED = 0; */ STAT_UNSPECIFIED = 0, /** * @generated from enum value: STAT_CPU_TIMES = 1; */ STAT_CPU_TIMES = 1, /** * @generated from enum value: STAT_IRQ_COUNTS = 2; */ STAT_IRQ_COUNTS = 2, /** * @generated from enum value: STAT_SOFTIRQ_COUNTS = 3; */ STAT_SOFTIRQ_COUNTS = 3, /** * @generated from enum value: STAT_FORK_COUNT = 4; */ STAT_FORK_COUNT = 4 } /** * Describes the enum perfetto.protos.SysStatsConfig.StatCounters. */ export declare const SysStatsConfig_StatCountersSchema: GenEnum<SysStatsConfig_StatCounters>; //# sourceMappingURL=sys_stats_config_pb.d.ts.map