From 793be3a0f51a8f14660e337140678cfa3532e9e0 Mon Sep 17 00:00:00 2001 From: Konrad Sztyber Date: Tue, 18 Apr 2023 10:12:16 +0200 Subject: [PATCH] accel_perf: use accel stats when dumping results Signed-off-by: Konrad Sztyber Change-Id: Iae1128ce01c16731bced8f97c08f44e1b0bc83f2 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/17626 Reviewed-by: Changpeng Liu Reviewed-by: Jim Harris Tested-by: SPDK CI Jenkins Reviewed-by: Aleksey Marchuk --- examples/accel/perf/accel_perf.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/examples/accel/perf/accel_perf.c b/examples/accel/perf/accel_perf.c index 8b802d6fe..e00eaa977 100644 --- a/examples/accel/perf/accel_perf.c +++ b/examples/accel/perf/accel_perf.c @@ -87,7 +87,7 @@ struct ap_task { struct worker_thread { struct spdk_io_channel *ch; - uint64_t xfer_completed; + struct spdk_accel_opcode_stats stats; uint64_t xfer_failed; uint64_t injected_miscompares; uint64_t current_queue_depth; @@ -270,6 +270,8 @@ unregister_worker(void *arg1) { struct worker_thread *worker = arg1; + spdk_accel_get_opcode_stats(worker->ch, worker->workload, + &worker->stats, sizeof(worker->stats)); free(worker->task_base); spdk_put_io_channel(worker->ch); spdk_thread_exit(spdk_get_thread()); @@ -668,7 +670,6 @@ accel_done(void *arg1, int status) worker->xfer_failed++; } - worker->xfer_completed++; worker->current_queue_depth--; if (!worker->is_draining && status == 0) { @@ -693,11 +694,11 @@ dump_result(void) printf("------------------------------------------------------------------------\n"); while (worker != NULL) { - uint64_t xfer_per_sec = worker->xfer_completed / g_time_in_sec; - uint64_t bw_in_MiBps = (worker->xfer_completed * g_xfer_size_bytes) / + uint64_t xfer_per_sec = worker->stats.executed / g_time_in_sec; + uint64_t bw_in_MiBps = worker->stats.num_bytes / (g_time_in_sec * 1024 * 1024); - total_completed += worker->xfer_completed; + total_completed += worker->stats.executed; total_failed += worker->xfer_failed; total_miscompared += worker->injected_miscompares;