[ovirt-devel] [VDSM] scalable sampling benchmark
Francesco Romani
fromani at redhat.com
Fri Aug 1 13:23:25 UTC 2014
----- Original Message -----
> From: "Nir Soffer" <nsoffer at redhat.com>
> To: "Francesco Romani" <fromani at redhat.com>
> Cc: devel at ovirt.org, "Michal Skrivanek" <mskrivan at redhat.com>
> Sent: Friday, August 1, 2014 3:10:08 PM
> Subject: Re: [ovirt-devel] [VDSM] scalable sampling benchmark
> > find attached graphs for CPU and memory profiling.
> > Some stats on RHEL 6.5:
> >
> > master cpu usage:
> > samples% below
> > average% 10% 25% 50% 75%
> > libvirt 74.101 0.083 0.083 3.172 52.922
> > vdsm 44.211 3.506 33.556 70.618 84.641
> > total 30.504 0.000 9.599 99.750 100.000
> >
> > scalable_sampling cpu usage:
> >
> > samples% below
> > average% 10% 25% 50% 75%
> > libvirt 58.835 0.000 0.591 28.270 86.160
>
> I wonder if we are using libvirt correctly - maybe our thread pool is too
> small, keeping tasks in our queue, instead of letting libvirt process
> them concurrently?
>
> Can you check the size of the libvirt thread pool, and increase our sampling
> pool to the same value?
Will do.
> > vdsm 65.146 0.084 10.549 49.030 71.055
>
> This looks 47% worse then the current code. We need a profile to understand
> why.
>
> Are you sure that we are doing the same amount of samplers in both cases?
> Did you compare the logs?
I haven't yet did specific checks besides the code, but indeed this behaviour
need a proper explanation, then I'll bump the priority of this task.
Otherwise to run more benchs is close to useless.
Will also figure out a way to cross-check the logs.
> Maybe we should create simpler standalone benchmark simulating what vdsm
> does,
> hopefully yappi will not crash using it, and if it does, the benchmark can
> be used by yappi developers to fix this.
I agree this could be useful to ourselves also to improve our own code.
If we go this way let's just sync up.
> > total 29.390 0.000 24.473 99.325 100.000
> >
> > memory usage (RSS, mmegabytes), in numbers:
> >
> > average minimum maximum
> > master 262 254 264
> > scalable_sampling 143 133 147
>
> So this seems to save lot of memory, but cost in more cpu. I wonder if this
> is better - systems have huge amount of memory, but much limited cpus.
>
> Before 3.5, we were using gigabytes of memory for the remote file handlers
> on NFS (replaced by ioprocess), and I never heard anyone complaining about
> it, but we had lot of issues with excessive cpu usage.
IMHI better to optimize for CPU usage. The memory reduction makes sense
considering we dropped ~100 threads.
Bests,
--
Francesco Romani
RedHat Engineering Virtualization R & D
Phone: 8261328
IRC: fromani
More information about the Devel
mailing list