@ -53,53 +53,71 @@ def massage_qps_stats(scenario_result):
stats [ " core_executor_wakeup_initiated " ] = massage_qps_stats_helpers . counter ( core_stats , " executor_wakeup_initiated " )
stats [ " core_executor_queue_drained " ] = massage_qps_stats_helpers . counter ( core_stats , " executor_queue_drained " )
stats [ " core_executor_push_retries " ] = massage_qps_stats_helpers . counter ( core_stats , " executor_push_retries " )
stats [ " core_tcp_write_size " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . buckets )
stats [ " core_tcp_write_size_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . boundaries )
stats [ " core_tcp_write_size_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . boundaries )
stats [ " core_tcp_write_size_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . boundaries )
stats [ " core_tcp_write_size_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " ) . boundaries )
stats [ " core_tcp_write_iov_size " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . buckets )
stats [ " core_tcp_write_iov_size_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . boundaries )
stats [ " core_tcp_write_iov_size_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . boundaries )
stats [ " core_tcp_write_iov_size_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . boundaries )
stats [ " core_tcp_write_iov_size_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " ) . boundaries )
stats [ " core_tcp_read_size " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . buckets )
stats [ " core_tcp_read_size_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . boundaries )
stats [ " core_tcp_read_size_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . boundaries )
stats [ " core_tcp_read_size_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . boundaries )
stats [ " core_tcp_read_size_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " ) . boundaries )
stats [ " core_tcp_read_offer " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . buckets )
stats [ " core_tcp_read_offer_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . boundaries )
stats [ " core_tcp_read_offer_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . boundaries )
stats [ " core_tcp_read_offer_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . boundaries )
stats [ " core_tcp_read_offer_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " ) . boundaries )
stats [ " core_tcp_read_offer_iov_size " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . buckets )
stats [ " core_tcp_read_offer_iov_size_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . boundaries )
stats [ " core_tcp_read_offer_iov_size_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . boundaries )
stats [ " core_tcp_read_offer_iov_size_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . boundaries )
stats [ " core_tcp_read_offer_iov_size_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " ) . boundaries )
stats [ " core_http2_send_message_size " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . buckets )
stats [ " core_http2_send_message_size_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . boundaries )
stats [ " core_http2_send_message_size_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . boundaries )
stats [ " core_http2_send_message_size_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . boundaries )
stats [ " core_http2_send_message_size_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " ) . boundaries )
stats [ " core_http2_send_initial_metadata_per_write " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . buckets )
stats [ " core_http2_send_initial_metadata_per_write_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_initial_metadata_per_write_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_initial_metadata_per_write_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_initial_metadata_per_write_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_message_per_write " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . buckets )
stats [ " core_http2_send_message_per_write_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . boundaries )
stats [ " core_http2_send_message_per_write_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . boundaries )
stats [ " core_http2_send_message_per_write_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . boundaries )
stats [ " core_http2_send_message_per_write_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " ) . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . buckets )
stats [ " core_http2_send_trailing_metadata_per_write_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " ) . boundaries )
stats [ " core_http2_send_flowctl_per_write " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . buckets )
stats [ " core_http2_send_flowctl_per_write_bkts " ] = " , " . join ( " %f " % x for x in massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . boundaries )
stats [ " core_http2_send_flowctl_per_write_50p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . buckets , 50 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . boundaries )
stats [ " core_http2_send_flowctl_per_write_95p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . buckets , 95 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . boundaries )
stats [ " core_http2_send_flowctl_per_write_99p " ] = massage_qps_stats_helpers . percentile ( massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . buckets , 99 , massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " ) . boundaries )
stats [ " core_server_requested_calls " ] = massage_qps_stats_helpers . counter ( core_stats , " server_requested_calls " )
stats [ " core_server_slowpath_requests_queued " ] = massage_qps_stats_helpers . counter ( core_stats , " server_slowpath_requests_queued " )
h = massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_size " )
stats [ " core_tcp_write_size " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_tcp_write_size_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_tcp_write_size_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_tcp_write_size_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_tcp_write_size_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " tcp_write_iov_size " )
stats [ " core_tcp_write_iov_size " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_tcp_write_iov_size_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_tcp_write_iov_size_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_tcp_write_iov_size_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_tcp_write_iov_size_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_size " )
stats [ " core_tcp_read_size " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_tcp_read_size_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_tcp_read_size_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_tcp_read_size_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_tcp_read_size_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer " )
stats [ " core_tcp_read_offer " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_tcp_read_offer_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_tcp_read_offer_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_tcp_read_offer_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_tcp_read_offer_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " tcp_read_offer_iov_size " )
stats [ " core_tcp_read_offer_iov_size " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_tcp_read_offer_iov_size_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_tcp_read_offer_iov_size_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_tcp_read_offer_iov_size_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_tcp_read_offer_iov_size_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_size " )
stats [ " core_http2_send_message_size " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_http2_send_message_size_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_http2_send_message_size_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_http2_send_message_size_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_http2_send_message_size_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " http2_send_initial_metadata_per_write " )
stats [ " core_http2_send_initial_metadata_per_write " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_http2_send_initial_metadata_per_write_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_http2_send_initial_metadata_per_write_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_http2_send_initial_metadata_per_write_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_http2_send_initial_metadata_per_write_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " http2_send_message_per_write " )
stats [ " core_http2_send_message_per_write " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_http2_send_message_per_write_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_http2_send_message_per_write_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_http2_send_message_per_write_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_http2_send_message_per_write_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " http2_send_trailing_metadata_per_write " )
stats [ " core_http2_send_trailing_metadata_per_write " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_http2_send_trailing_metadata_per_write_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_http2_send_trailing_metadata_per_write_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " http2_send_flowctl_per_write " )
stats [ " core_http2_send_flowctl_per_write " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_http2_send_flowctl_per_write_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_http2_send_flowctl_per_write_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_http2_send_flowctl_per_write_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_http2_send_flowctl_per_write_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )
h = massage_qps_stats_helpers . histogram ( core_stats , " server_cqs_checked " )
stats [ " core_server_cqs_checked " ] = " , " . join ( " %f " % x for x in h . buckets )
stats [ " core_server_cqs_checked_bkts " ] = " , " . join ( " %f " % x for x in h . boundaries )
stats [ " core_server_cqs_checked_50p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 50 , h . boundaries )
stats [ " core_server_cqs_checked_95p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 95 , h . boundaries )
stats [ " core_server_cqs_checked_99p " ] = massage_qps_stats_helpers . percentile ( h . buckets , 99 , h . boundaries )