Module vs Kernel main performacne
From: Chetan Nanda <hidden>
Date: 2012-06-01 00:27:29
On May 31, 2012 9:37 PM, "Abu Rasheda" [off-list ref] wrote:
On Wed, May 30, 2012 at 10:35 PM, Mulyadi Santosa [off-list ref] wrote:quoted
Hi... On Thu, May 31, 2012 at 4:44 AM, Abu Rasheda [off-list ref]
wrote:
quoted
quoted
as I increase size of buffer, insns per cycle keep decreasing. Here is
the data:
quoted
quoted
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
quoted
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