File: perf_stat.proto

package info (click to toggle)
chromium 139.0.7258.127-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 6,122,068 kB
  • sloc: cpp: 35,100,771; ansic: 7,163,530; javascript: 4,103,002; python: 1,436,920; asm: 946,517; xml: 746,709; pascal: 187,653; perl: 88,691; sh: 88,436; objc: 79,953; sql: 51,488; cs: 44,583; fortran: 24,137; makefile: 22,147; tcl: 15,277; php: 13,980; yacc: 8,984; ruby: 7,485; awk: 3,720; lisp: 3,096; lex: 1,327; ada: 727; jsp: 228; sed: 36
file content (53 lines) | stat: -rw-r--r-- 1,985 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

syntax = "proto2";

option optimize_for = LITE_RUNTIME;
option java_package = "org.chromium.components.metrics";

package metrics;

// Stores output generated by the "perf stat" command.
//
// See https://perf.wiki.kernel.org/index.php/Tutorial#Counting_with_perf_stat
// for more details.

// Next tag: 3
message PerfStatProto {
  // All lines printed by "perf stat".
  repeated PerfStatLine line = 1;

  // The command line used to run "perf stat".
  optional string command_line = 2;

  // Represents one line of "perf stat" output.
  // Next tag: 4
  message PerfStatLine {
    // Time since the start of the "perf stat" command, in milliseconds.
    //
    // When running "perf stat" and printing the counters at the end, this is
    // the total time taken by the run.
    //
    // Alternatively, "perf stat" can print its stats at regular intervals until
    // the end of the run. For example, if "perf stat" runs for one second and
    // prints at 200-ms intervals, it will print counter values for each event
    // a total of five times. According to "perf stat" usage instructions, the
    // printing interval should be no less than 100 ms.
    optional uint64 time_ms = 1;

    // Current count value of the event being counted. May be different from the
    // nominal counter value reported by "perf stat", depending on the event.
    // For example, memory access counters are in units of 64 bytes. A counter
    // value of 1024 would represent 65536 bytes, and we would set this field to
    // 65536.
    optional uint64 count = 2;

    // Name of event whose counter is listed on this line.
    // This string should also appear as part of |PerfStatProto::command_line|.
    // "perf stat" will preserve the event name exactly as it is passed in via
    // the command line.
    optional string event_name = 3;
  }
}