Messages in this thread | | | Date | Fri, 27 Jan 2006 11:52:27 -0800 | From | Ravikiran G Thirumalai <> | Subject | Re: [patch 3/4] net: Percpufy frequently used variables -- proto.sockets_allocated |
| |
On Fri, Jan 27, 2006 at 09:53:53AM +0100, Eric Dumazet wrote: > Ravikiran G Thirumalai a écrit : > >Change the atomic_t sockets_allocated member of struct proto to a > >per-cpu counter. > > > >Signed-off-by: Pravin B. Shelar <pravins@calsoftinc.com> > >Signed-off-by: Ravikiran Thirumalai <kiran@scalex86.org> > >Signed-off-by: Shai Fultheim <shai@scalex86.org> > > > Hi Ravikiran > > If I correctly read this patch, I think there is a scalability problem. > > On a big SMP machine, read_sockets_allocated() is going to be a real killer. > > Say we have 128 Opterons CPUS in a box.
read_sockets_allocated is being invoked when when /proc/net/protocols is read, which can be assumed as not frequent. At sk_stream_mem_schedule(), read_sockets_allocated() is invoked only certain conditions, under memory pressure -- on a large CPU count machine, you'd have large memory, and I don't think read_sockets_allocated would get called often. It did not atleast on our 8cpu/16G box. So this should be OK I think.
There're no 128 CPU Opteron boxes yet afaik ;).
Thanks, Kiran - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |