Displaying 8 results from an estimated 8 matches for "zero_bytes".
2019 Nov 30
0
[PATCH nbdkit 2/3] filters: stats: Measure time per operation
...-60,12 +60,12 @@ static struct timeval start_t;
/* This lock protects all the stats. */
static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER;
-static uint64_t pread_ops, pread_bytes;
-static uint64_t pwrite_ops, pwrite_bytes;
-static uint64_t trim_ops, trim_bytes;
-static uint64_t zero_ops, zero_bytes;
-static uint64_t extents_ops, extents_bytes;
-static uint64_t cache_ops, cache_bytes;
+static uint64_t pread_ops, pread_bytes, pread_usecs;
+static uint64_t pwrite_ops, pwrite_bytes, pwrite_usecs;
+static uint64_t trim_ops, trim_bytes, trim_usecs;
+static uint64_t zero_ops, zero_bytes, zero_usecs;...
2019 Nov 30
5
[PATCH nbdkit 0/3] filters: stats: More useful, more friendly
- Use more friendly output with GiB and MiB/s.
- Measure time per operation, providing finer grain stats
- Add missing stats for flush
I hope that these changes will help to understand and imporve virt-v2v
performance.
Nir Soffer (3):
filters: stats: Show size in GiB, rate in MiB/s
filters: stats: Measure time per operation
filters: stats: Add flush stats
filters/stats/stats.c | 117
2019 Nov 30
0
[PATCH nbdkit 1/3] filters: stats: Show size in GiB, rate in MiB/s
...p, "trim: %" PRIu64 " ops, %.2f GiB, %.2f MiB/s\n",
+ trim_ops, trim_bytes / GiB, calc_mibps (trim_bytes, usecs));
if (zero_ops > 0)
- fprintf (fp, "zero: %" PRIu64 " ops, %" PRIu64 " bytes, %g bits/s\n",
- zero_ops, zero_bytes, calc_bps (zero_bytes, usecs));
+ fprintf (fp, "zero: %" PRIu64 " ops, %.2f GiB, %.2f MiB/s\n",
+ zero_ops, zero_bytes / GiB, calc_mibps (zero_bytes, usecs));
if (extents_ops > 0)
- fprintf (fp, "extents: %" PRIu64 " ops, %" PRIu64 &qu...
2019 Nov 30
0
Re: [PATCH nbdkit 2/3] filters: stats: Measure time per operation
...e 3 uses cases. Here is a possible way to show both system throughput
and fine grain per operation stats.
I'm assuming that for system throughput we like to think about the
total bytes processed
by the system in each direction:
read_rate = pread_bytes / total_time
write_rate = (pwrite_bytes + zero_bytes + trim_bytes) / total_time
1. copy image to nbdkit
total: 2300 ops, 6 GiB, 2.150 s, 2925.71 wMiB/s
write: 1271 ops, 1.14 GiB, 0.398 s, 2922.22 MiB/s
zero: 1027 ops, 4.86 GiB, 0.012 s, 414723.03 MiB/s
extents: 1 ops, 2.00 GiB, 0.000 s, 120470559.51 MiB/s
flush: 1 ops, 1.200 s
2. read image from n...
2019 Nov 30
2
Re: [PATCH nbdkit 2/3] filters: stats: Measure time per operation
On Sat, Nov 30, 2019 at 02:17:06AM +0200, Nir Soffer wrote:
> Previously we measured the total time and used it to calculate the rate
> of different operations. This is incorrect and hides the real
> throughput. A more useful way is to measure the time we spent in each
> operation.
>
> Here is an example run with this change:
>
> $ ./nbdkit --foreground \
> --unix
2019 Apr 24
0
[nbdkit PATCH 4/4] filters: Check for mutex failures
...mp;lock);
}
return r;
}
@@ -220,10 +216,9 @@ stats_zero (struct nbdkit_next_ops *next_ops, void *nxdata,
r = next_ops->zero (nxdata, count, offset, flags, err);
if (r == 0) {
- pthread_mutex_lock (&lock);
+ ACQUIRE_LOCK_FOR_CURRENT_SCOPE (&lock);
zero_ops++;
zero_bytes += count;
- pthread_mutex_unlock (&lock);
}
return r;
}
@@ -239,14 +234,13 @@ stats_extents (struct nbdkit_next_ops *next_ops, void *nxdata,
r = next_ops->extents (nxdata, count, offset, flags, extents, err);
if (r == 0) {
- pthread_mutex_lock (&lock);
+ ACQUIRE_LO...
2019 Apr 24
7
[nbdkit PATCH 0/4] More mutex sanity checking
I do have a question about whether patch 2 is right, or whether I've
exposed a bigger problem in the truncate (and possibly other) filter,
but the rest seem fairly straightforward.
Eric Blake (4):
server: Check for pthread lock failures
truncate: Factor out reading real_size under mutex
plugins: Check for mutex failures
filters: Check for mutex failures
filters/cache/cache.c
2019 May 16
27
[nbdkit PATCH v2 00/24] implement NBD_CMD_CACHE
Since v1:
- rework .can_cache to be tri-state, with default of no advertisement
(ripple effect through other patches)
- add a lot more patches in order to round out filter support
And in the meantime, Rich pushed NBD_CMD_CACHE support into libnbd, so
in theory we now have a way to test cache commands through the entire
stack.
Eric Blake (24):
server: Internal hooks for implementing