blob: ed761890d837ed8a657cff8d7b964f91f9c4cebc [file] [log] [blame]
rupertsb394da42017-11-28 21:17:48 -08001// Copyright 2017 The Bazel Authors. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package tools.protos;
18
19option java_package = "com.google.devtools.build.lib.shell";
20option java_outer_classname = "Protos";
lberkid002e452019-04-26 06:46:52 -070021option optimize_for = LITE_RUNTIME;
rupertsb394da42017-11-28 21:17:48 -080022
23// Verbatim representation of the rusage structure returned by getrusage(2).
24// For further details on all these cryptic names, see that manual page.
25message ResourceUsage {
26 int64 utime_sec = 1; // user CPU time used, seconds part
27 int64 utime_usec = 2; // user CPU time used, microseconds part
28 int64 stime_sec = 3; // system CPU time used, seconds part
29 int64 stime_usec = 4; // system CPU time used, microseconds part
30 int64 maxrss = 5; // maximum resident set size
31 int64 ixrss = 6; // integral shared memory size
32 int64 idrss = 7; // integral unshared data size
33 int64 isrss = 8; // integral unshared stack size
34 int64 minflt = 9; // page reclaims (soft page faults)
35 int64 majflt = 10; // page faults (hard page faults)
36 int64 nswap = 11; // swaps
37 int64 inblock = 12; // block input operations
38 int64 oublock = 13; // block output operations
39 int64 msgsnd = 14; // IPC messages sent
40 int64 msgrcv = 15; // IPC messages received
41 int64 nsignals = 16; // signals received
42 int64 nvcsw = 17; // voluntary context switches
43 int64 nivcsw = 18; // involuntary context switches
44}
45
46message ExecutionStatistics {
47 ResourceUsage resource_usage = 1;
48}