Module vs Kernel main performacne

Chetan Nanda chetannanda at gmail.com
Thu May 31 20:27:29 EDT 2012


On May 31, 2012 9:37 PM, "Abu Rasheda" <rcpilot2010 at gmail.com> wrote:
>
> On Wed, May 30, 2012 at 10:35 PM, Mulyadi Santosa
> <mulyadi.santosa at gmail.com> wrote:
> > Hi...
> >
> > On Thu, May 31, 2012 at 4:44 AM, Abu Rasheda <rcpilot2010 at gmail.com>
wrote:
> >> as I increase size of buffer, insns per cycle keep decreasing. Here is
the data:
> >>
> >>    1k 0.90  insns per cycle
> >>    8k 0.43  insns per cycle
> >>  43k 0.18  insns per cycle
> >> 100k 0.08  insns per cycle
> >>
> >> Showing that copy_from_user is more efficient when copy data is small,
> >> why it is so ?
> >
> > you meant, the bigger the buffer, the fewer the instructions, right?
>
> yes
>
If the buffer at user side is more then a page, then it may be that
complete user space buffer is not available in memory and kernel spend time
in processing page fault
> >
> > Not sure why, but I am sure it will reach some peak point.
> >
> > Anyway, you did kmalloc and then kfree()? I think that's why...bigger
> > buffer will grab large chunk from slab...and again likely it's
> > physically contigous. Also, it will be placed in the same cache line.
> >
> > Whereas the smaller one....will hit allocate/free cycle more...thus
> > flushing the L1/L2 cache even more.
>
> It seems to be doing opposite, bigger the allocation / copy longer stall
is.
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120601/14efcdb3/attachment.html 


More information about the Kernelnewbies mailing list