Skip to content

Commit 43daf82

Browse files
jackhumphriesdohyunkim-dev
authored andcommitted
ghOSt: Add print_last command line argument to RocksDB
When this command line argument is true, RocksDB only prints the end-to-end results, rather than the results for each stage. PiperOrigin-RevId: 489336301
1 parent 87e4da3 commit 43daf82

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

experiments/rocksdb/latency.cc

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -216,14 +216,16 @@ void Print(const std::vector<Request>& requests, absl::Duration runtime,
216216
PrintPrettyPreface(options);
217217
}
218218

219-
HANDLE_STAGE("Ingress Queue Time", requests, runtime, request_generated,
220-
request_received, options);
221-
HANDLE_STAGE("Repeatable Handle Time", requests, runtime, request_received,
222-
request_assigned, options);
223-
HANDLE_STAGE("Worker Queue Time", requests, runtime, request_assigned,
224-
request_start, options);
225-
HANDLE_STAGE("Worker Handle Time", requests, runtime, request_start,
226-
request_finished, options);
219+
if (!options.print_last) {
220+
HANDLE_STAGE("Ingress Queue Time", requests, runtime, request_generated,
221+
request_received, options);
222+
HANDLE_STAGE("Repeatable Handle Time", requests, runtime, request_received,
223+
request_assigned, options);
224+
HANDLE_STAGE("Worker Queue Time", requests, runtime, request_assigned,
225+
request_start, options);
226+
HANDLE_STAGE("Worker Handle Time", requests, runtime, request_start,
227+
request_finished, options);
228+
}
227229
// Total time in system
228230
HANDLE_STAGE("Total", requests, runtime, request_generated, request_finished,
229231
options);

experiments/rocksdb/latency.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ struct PrintOptions {
1818
// If true, prints the results in human-readable form. Otherwise, prints the
1919
// results in CSV form.
2020
bool pretty;
21+
// If true, only prints the end-to-end results, rather than the results for
22+
// each stage.
23+
bool print_last;
2124
// If true, prints the entire distribution.
2225
bool distribution;
2326
// If true, prints the latencies in units of nanoseconds. If false, prints the

experiments/rocksdb/main.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@
1414

1515
ABSL_FLAG(std::string, print_format, "pretty",
1616
"Results print format (\"pretty\" or \"csv\", default: \"pretty\")");
17+
ABSL_FLAG(bool, print_last, false,
18+
"If true, only prints the end-to-end results, rather than the "
19+
"results for each stage (default: false)");
1720
ABSL_FLAG(bool, print_distribution, false,
1821
"Prints every request's results (default: false)");
1922
ABSL_FLAG(bool, print_ns, false,
@@ -98,6 +101,7 @@ ghost_test::Options GetOptions() {
98101
CHECK(print_format == "pretty" || print_format == "csv");
99102
options.print_options.pretty = (print_format == "pretty");
100103

104+
options.print_options.print_last = absl::GetFlag(FLAGS_print_last);
101105
options.print_options.distribution = absl::GetFlag(FLAGS_print_distribution);
102106
options.print_options.ns = absl::GetFlag(FLAGS_print_ns);
103107
options.print_options.os = &std::cout;

0 commit comments

Comments
 (0)