Fwd: Re: lxc-performance?

Balbir Singh balbir at linux.vnet.ibm.com
Thu Oct 14 06:54:18 PDT 2010


On Thu, Oct 14, 2010 at 7:11 PM, MALATTAR
<mouhannad.alattar at univ-fcomte.fr> wrote:
>
>  Le 12/10/2010 07:05, KAMEZAWA Hiroyuki a écrit :
> > On Fri, 08 Oct 2010 10:09:51 +0200
> > MALATTAR<mouhannad.alattar at univ-fcomte.fr>  wrote:
> >
> >> Le 07/10/2010 16:43, MALATTAR a écrit :
> >>> ------------------------------------------------------------------------
> >>> 06.10.2010 23:41, MALATTAR ?????:
> >>>
> >>>> /  the container dora1, where i launch an instance of my IDS, does not take
> >>> />/  more than 70 MB as memory even though the memory limit for it is much
> >>> />/  bigger than this value,
> >>> /
> >>> How do you measure memory usage?
> >> by using the command:
> >> lxc-cgroup -n dora1 memory.usage_in_bytes
> >>>    What's in memory.max_usage_in_bytes of
> >>> the container's cgroup?
> >> executing the next command lxc-cgroup -n dora1 memory.max_usage_in_bytes
> >> gave me 70193152 bytes
> >>
> > Hmm. what latencytop shows ?
> >
> > You can see this kind of output.
> > ==
> > Cause                                                Maximum     Percentage
> > Writing a page to disk                            551.6 msec         36.8 %
> > Fork() system call                                273.7 msec          1.1 %
> > Page fault                                        253.9 msec         29.5 %
> > Writing buffer to disk (synchronous)              225.9 msec          2.9 %
> > Creating block layer request                      202.7 msec         17.1 %
> > Walking directory tree                            161.5 msec          1.4 %
> > [congestion_wait]                                  97.6 msec          4.4 %
> > Executing a program                                97.1 msec          0.3 %
> > synchronous write                                  73.9 msec          0.1 %
> > ==
> >
> > IMHO, if memory limit is the problem, "Page Fault" tend to be big.
> >
> >
> > Thanks,
> > -Kame
> >
> >
> executing latencytop during the execution of my program gave me:
> Cause
> Maximum     Percentage
> fsync() on a file (type 'F' for details)                      45.1
> msec       2.2 %
> Waiting for event (poll)                                          5.0
> msec         47.9 %
> Userspace lock contention                                    5.0
> msec         43.1 %
> Waiting for event (select)                                      4.8
> msec          5.7 %
> Throttling GPU while waiting for commands         3.4 msec          0.4 %
> [i915_do_wait_request]                                         3.3
> msec          0.5 %
> Waiting for data on unix socket                             0.3
> msec          0.1 %
> Waiting for TTY data                                              0.2
> msec          0.1 %
>
> Process mysqld (291)                               Total:   2.3 msec
> Waiting for data on unix socket                     0.3 msec        100.0 %
>
> It seems that there is no problem...
>
> also memtest command was able to allocate up to 1024MB but it takes a
> long time
> for one loop only ...
> So, i think the problem is in my program not in the container, is not it?

Could you please dump your cgroup filesystem? What is
memory.limit_in_bytes, memory.stat? fysnc() can clearly hold up things
across the filesystem with ext3 and other FS. The source does sound
like mysql database for the frequent fsync's - is that correct? What
does the iotop output look like?

Balbir


More information about the Containers mailing list