[RFMC] per-container tcp buffer limitation

KAMEZAWA Hiroyuki kamezawa.hiroyu at jp.fujitsu.com
Wed Aug 31 23:48:10 PDT 2011


On Wed, 31 Aug 2011 23:43:27 -0300
Glauber Costa <glommer at parallels.com> wrote:

> Hello People,
> 
> [ For the ones in linux-mm that are receiving this for the first time,
>    this is a follow up of
>    http://thread.gmane.org/gmane.linux.kernel.containers/21295 ]
> 
> Here is a new, a bit more mature version of my previous RFC. Now I 
> Request For More Comments from you guys in this new version of the patch.
> 
> Highlights:
> 
> * Although I do intend to experiment with more scenarios (suggestions 
> welcome), there does not seem to be a (huge) performance hit with this 
> patch applied, at least in a basic latency benchmark. That indicates 
> that even if we can demonstrate a performance hit, it won't be too hard 
> to optimize it away (famous last words?)
> 
> Since the patch touches both rcv and snd sides, I benchmarked it with 
> netperf against localhost. Command line: netperf -t TCP_RR -H localhost.
> 
> Without the patch
> =================
> 
> Socket Size   Request  Resp.   Elapsed  Trans.
> Send   Recv   Size     Size    Time     Rate
> bytes  Bytes  bytes    bytes   secs.    per sec
> 
> 16384  87380  1        1       10.00    26996.35
> 16384  87380
> 
> With the patch
> ===============
> 
> Local /Remote
> Socket Size   Request  Resp.   Elapsed  Trans.
> Send   Recv   Size     Size    Time     Rate
> bytes  Bytes  bytes    bytes   secs.    per sec
> 
> 16384  87380  1        1       10.00    27291.86
> 16384  87380
> 
> 
> As you can see, rate is a bit higher, but still under an one percent 
> range, meaning it is basically unchanged. I will benchmark it with 
> various levels of cgroup nesting on my next submission so we can have a 
> better idea of the impact of it when enabled.
> 
seems nice.

> * As nicely pointed out by Kamezawa, I dropped the sockets cgroup, and 
> introduced a kmem cgroup. After careful consideration, I decided not to 
> reuse the memcg. Basically, my impression is that memcg is concerned 
> with user objects, with page granularity and its swap attributes. 
> Because kernel objects are entirely different, I prefer to group them here.
> 

I myself has no objection to this direction. Other guys ?

Thanks,
-Kame



More information about the Containers mailing list