bdevperf: use SPDK_SEC_TO_USEC for unit conversion
Use SPDK_SEC_TO_USEC instead of '1000 * 1000' or '1000000' for unit conversion. Change-Id: Ie9fb016b51ef3346ec640297941408f6c643b9b8 Signed-off-by: Richael Zhuang <richael.zhuang@arm.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15784 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
parent
723dd06eb8
commit
045c781d47
@ -50,7 +50,7 @@ static bool g_error_to_exit = false;
|
||||
static int g_queue_depth = 0;
|
||||
static uint64_t g_time_in_usec;
|
||||
static int g_show_performance_real_time = 0;
|
||||
static uint64_t g_show_performance_period_in_usec = 1000000;
|
||||
static uint64_t g_show_performance_period_in_usec = SPDK_SEC_TO_USEC;
|
||||
static uint64_t g_show_performance_period_num = 0;
|
||||
static uint64_t g_show_performance_ema_period = 0;
|
||||
static int g_run_rc = 0;
|
||||
@ -219,7 +219,7 @@ static struct bdevperf_aggregate_stats g_stats = {.min_latency = (double)UINT64_
|
||||
static double
|
||||
get_cma_io_per_second(struct bdevperf_job *job, uint64_t io_time_in_usec)
|
||||
{
|
||||
return (double)job->io_completed * 1000000 / io_time_in_usec;
|
||||
return (double)job->io_completed * SPDK_SEC_TO_USEC / io_time_in_usec;
|
||||
}
|
||||
|
||||
static double
|
||||
@ -228,7 +228,7 @@ get_ema_io_per_second(struct bdevperf_job *job, uint64_t ema_period)
|
||||
double io_completed, io_per_second;
|
||||
|
||||
io_completed = job->io_completed;
|
||||
io_per_second = (double)(io_completed - job->prev_io_completed) * 1000000
|
||||
io_per_second = (double)(io_completed - job->prev_io_completed) * SPDK_SEC_TO_USEC
|
||||
/ g_show_performance_period_in_usec;
|
||||
job->prev_io_completed = io_completed;
|
||||
|
||||
@ -273,7 +273,7 @@ performance_dump_job(struct bdevperf_aggregate_stats *stats, struct bdevperf_job
|
||||
|
||||
if (job->io_failed > 0 && !job->reset && !job->continue_on_failure) {
|
||||
printf("\r Job: %s ended in about %.2f seconds with error\n",
|
||||
spdk_thread_get_name(job->thread), (double)job->run_time_in_usec / 1000000);
|
||||
spdk_thread_get_name(job->thread), (double)job->run_time_in_usec / SPDK_SEC_TO_USEC);
|
||||
}
|
||||
if (job->verify) {
|
||||
printf("\t Verification LBA range: start 0x%" PRIx64 " length 0x%" PRIx64 "\n",
|
||||
@ -304,16 +304,16 @@ performance_dump_job(struct bdevperf_aggregate_stats *stats, struct bdevperf_job
|
||||
|
||||
total_io = job->io_completed + job->io_failed;
|
||||
if (total_io != 0) {
|
||||
average_latency = (double)latency_info.total / total_io * 1000 * 1000 / tsc_rate;
|
||||
average_latency = (double)latency_info.total / total_io * SPDK_SEC_TO_USEC / tsc_rate;
|
||||
}
|
||||
min_latency = (double)latency_info.min * 1000 * 1000 / tsc_rate;
|
||||
max_latency = (double)latency_info.max * 1000 * 1000 / tsc_rate;
|
||||
min_latency = (double)latency_info.min * SPDK_SEC_TO_USEC / tsc_rate;
|
||||
max_latency = (double)latency_info.max * SPDK_SEC_TO_USEC / tsc_rate;
|
||||
|
||||
failed_per_second = (double)job->io_failed * 1000000 / time_in_usec;
|
||||
timeout_per_second = (double)job->io_timeout * 1000000 / time_in_usec;
|
||||
failed_per_second = (double)job->io_failed * SPDK_SEC_TO_USEC / time_in_usec;
|
||||
timeout_per_second = (double)job->io_timeout * SPDK_SEC_TO_USEC / time_in_usec;
|
||||
|
||||
printf("\t %-20s: %10.2f %10.2f %10.2f",
|
||||
job->name, (float)time_in_usec / 1000000, io_per_second, mb_per_second);
|
||||
job->name, (float)time_in_usec / SPDK_SEC_TO_USEC, io_per_second, mb_per_second);
|
||||
printf(" %10.2f %8.2f",
|
||||
failed_per_second, timeout_per_second);
|
||||
printf(" %10.2f %10.2f %10.2f\n",
|
||||
@ -474,7 +474,7 @@ check_cutoff(void *ctx, uint64_t start, uint64_t end, uint64_t count,
|
||||
tsc_rate = spdk_get_ticks_hz();
|
||||
so_far_pct = (double)so_far / total;
|
||||
while (so_far_pct >= **cutoff && **cutoff > 0) {
|
||||
printf("%9.5f%% : %9.3fus\n", **cutoff * 100, (double)end * 1000 * 1000 / tsc_rate);
|
||||
printf("%9.5f%% : %9.3fus\n", **cutoff * 100, (double)end * SPDK_SEC_TO_USEC / tsc_rate);
|
||||
(*cutoff)++;
|
||||
}
|
||||
}
|
||||
@ -493,8 +493,8 @@ print_bucket(void *ctx, uint64_t start, uint64_t end, uint64_t count,
|
||||
tsc_rate = spdk_get_ticks_hz();
|
||||
so_far_pct = (double)so_far * 100 / total;
|
||||
printf("%9.3f - %9.3f: %9.4f%% (%9ju)\n",
|
||||
(double)start * 1000 * 1000 / tsc_rate,
|
||||
(double)end * 1000 * 1000 / tsc_rate,
|
||||
(double)start * SPDK_SEC_TO_USEC / tsc_rate,
|
||||
(double)end * SPDK_SEC_TO_USEC / tsc_rate,
|
||||
so_far_pct, count);
|
||||
}
|
||||
|
||||
@ -522,10 +522,10 @@ bdevperf_test_done(void *ctx)
|
||||
|
||||
if (g_shutdown) {
|
||||
g_shutdown_tsc = spdk_get_ticks() - g_start_tsc;
|
||||
time_in_usec = g_shutdown_tsc * 1000000 / spdk_get_ticks_hz();
|
||||
time_in_usec = g_shutdown_tsc * SPDK_SEC_TO_USEC / spdk_get_ticks_hz();
|
||||
g_time_in_usec = (g_time_in_usec > time_in_usec) ? time_in_usec : g_time_in_usec;
|
||||
printf("Received shutdown signal, test time was about %.6f seconds\n",
|
||||
(double)g_time_in_usec / 1000000);
|
||||
(double)g_time_in_usec / SPDK_SEC_TO_USEC);
|
||||
}
|
||||
|
||||
printf("\n%*s\n", 107, "Latency(us)");
|
||||
@ -544,7 +544,7 @@ bdevperf_test_done(void *ctx)
|
||||
g_stats.total_failed_per_second, g_stats.total_timeout_per_second);
|
||||
|
||||
if (g_stats.total_io_completed != 0) {
|
||||
average_latency = ((double)g_stats.total_tsc / g_stats.total_io_completed) * 1000 * 1000 /
|
||||
average_latency = ((double)g_stats.total_tsc / g_stats.total_io_completed) * SPDK_SEC_TO_USEC /
|
||||
spdk_get_ticks_hz();
|
||||
}
|
||||
printf(" %10.2f %10.2f %10.2f\n", average_latency, g_stats.min_latency, g_stats.max_latency);
|
||||
@ -636,7 +636,7 @@ bdevperf_end_task(struct bdevperf_task *task)
|
||||
if (job->is_draining) {
|
||||
if (job->current_queue_depth == 0) {
|
||||
end_tsc = spdk_get_ticks() - g_start_tsc;
|
||||
job->run_time_in_usec = end_tsc * 1000000 / spdk_get_ticks_hz();
|
||||
job->run_time_in_usec = end_tsc * SPDK_SEC_TO_USEC / spdk_get_ticks_hz();
|
||||
|
||||
/* keep histogram info before channel is destroyed */
|
||||
spdk_bdev_channel_get_histogram(job->bdev, job->ch, bdevperf_channel_get_histogram_cb,
|
||||
@ -1161,7 +1161,7 @@ reset_cb(struct spdk_bdev_io *bdev_io, bool success, void *cb_arg)
|
||||
spdk_bdev_free_io(bdev_io);
|
||||
|
||||
job->reset_timer = SPDK_POLLER_REGISTER(reset_job, job,
|
||||
10 * 1000000);
|
||||
10 * SPDK_SEC_TO_USEC);
|
||||
}
|
||||
|
||||
static int
|
||||
@ -1224,7 +1224,7 @@ bdevperf_job_run(void *ctx)
|
||||
job->run_timer = SPDK_POLLER_REGISTER(bdevperf_job_drain, job, g_time_in_usec);
|
||||
if (job->reset) {
|
||||
job->reset_timer = SPDK_POLLER_REGISTER(reset_job, job,
|
||||
10 * 1000000);
|
||||
10 * SPDK_SEC_TO_USEC);
|
||||
}
|
||||
|
||||
spdk_bdev_set_timeout(job->bdev_desc, g_timeout_in_sec, bdevperf_timeout_cb, job);
|
||||
@ -1248,7 +1248,7 @@ _performance_dump_done(void *ctx)
|
||||
printf(" %10.2f %8.2f",
|
||||
stats->total_failed_per_second, stats->total_timeout_per_second);
|
||||
|
||||
average_latency = ((double)stats->total_tsc / stats->total_io_completed) * 1000 * 1000 /
|
||||
average_latency = ((double)stats->total_tsc / stats->total_io_completed) * SPDK_SEC_TO_USEC /
|
||||
spdk_get_ticks_hz();
|
||||
printf(" %10.2f %10.2f %10.2f\n", average_latency, stats->min_latency, stats->max_latency);
|
||||
printf("\n");
|
||||
@ -1319,7 +1319,7 @@ bdevperf_test(void)
|
||||
{
|
||||
struct bdevperf_job *job;
|
||||
|
||||
printf("Running I/O for %" PRIu64 " seconds...\n", g_time_in_usec / 1000000);
|
||||
printf("Running I/O for %" PRIu64 " seconds...\n", g_time_in_usec / (uint64_t)SPDK_SEC_TO_USEC);
|
||||
fflush(stdout);
|
||||
|
||||
/* Start a timer to dump performance numbers */
|
||||
@ -2320,7 +2320,7 @@ bdevperf_parse_arg(int ch, char *arg)
|
||||
break;
|
||||
case 'S':
|
||||
g_show_performance_real_time = 1;
|
||||
g_show_performance_period_in_usec = tmp * 1000000;
|
||||
g_show_performance_period_in_usec = tmp * SPDK_SEC_TO_USEC;
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
@ -2376,7 +2376,7 @@ verify_test_params(struct spdk_app_opts *opts)
|
||||
if (g_time_in_sec <= 0) {
|
||||
goto out;
|
||||
}
|
||||
g_time_in_usec = g_time_in_sec * 1000000LL;
|
||||
g_time_in_usec = g_time_in_sec * SPDK_SEC_TO_USEC;
|
||||
|
||||
if (g_timeout_in_sec < 0) {
|
||||
goto out;
|
||||
|
Loading…
Reference in New Issue
Block a user