azunite / netmap

Automatically exported from code.google.com/p/netmap
0 stars 0 forks source link

Optimization on linux - hugetlb pages support #53

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Hello, folks!

I read netmap's kernel module code and found you are using kmalloc() for buffer 
allocation on Linux. It's OK but we will optimize this step with huge tlb pages 
which supported on Linux and will reduce access to TLB blocks and significantly 
improve overall performance. 

Thanks!

Original issue reported on code.google.com by pavel.odintsov on 26 Mar 2015 at 8:31

GoogleCodeExporter commented 9 years ago
using 2mb pages is definitely a good idea, if you want to play with it and send 
back patches those would be appreciated. The key thing, i guess, is to look at 
the memory allocator support (netmap_mem2.[ch]) and see if there are places 
with hardwired dependencies on 4k pages.

Original comment by rizzo.un...@gmail.com on 26 Mar 2015 at 8:37

GoogleCodeExporter commented 9 years ago

Original comment by rizzo.un...@gmail.com on 26 Mar 2015 at 8:38

GoogleCodeExporter commented 9 years ago
Thanks for positive answer! :) I will try to implement this feature and share 
performance tests.

Original comment by pavel.odintsov on 26 Mar 2015 at 8:40