lkml.org 
[lkml]   [2016]   [Nov]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 1/4] block: add scalable completion tracking of requests
From
Date
On 11/01/2016 03:05 PM, Jens Axboe wrote:
> +void blk_stat_init(struct blk_rq_stat *stat)
> +{
> + __blk_stat_init(stat, ktime_to_ns(ktime_get()));
> +}
> +
> +static bool __blk_stat_is_current(struct blk_rq_stat *stat, s64 now)
> +{
> + return (now & BLK_STAT_NSEC_MASK) == (stat->time & BLK_STAT_NSEC_MASK);
> +}
> +
> +bool blk_stat_is_current(struct blk_rq_stat *stat)
> +{
> + return __blk_stat_is_current(stat, ktime_to_ns(ktime_get()));
> +}

Hello Jens,

What is the performance impact of these patches? My experience is that
introducing ktime_get() in the I/O path of high-performance I/O devices
measurably slows down I/O. On https://lkml.org/lkml/2016/4/21/107 I read
that a single ktime_get() call takes about 100 ns.

Bart.

\
 
 \ /
  Last update: 2016-11-03 15:26    [W:3.197 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site