Scalability Issues in Linux Kernel - Tim Chen, Intel ; Dave Hansen ; Andy Kleen
Channel: Linux Plumbers Conference
Date: 15/10/2013

"We will like to discuss a list of issues we have encountered in the Linux Kernel. Some relate to the bottlenecks we have encountered.  
Examples include
1. LOCKSTAT scales poorly for system with large cpus.
2. Threads sharing a mm don't scale well for futexes, memory management, and signal handling
3. Contention on directory entry and node when we are opening or unlinking large number of files within a directory.
4. Page reclaim don't scale well as we have lots of cross cpu IPI for TLB flushing on a per page basis.  Page faults are bottlenecked in page clearing.
Others relate to the need of better framework, for example:
1. Framework for magic number tuning (e.g. batch size, hash table size, pool size) suitable for manual and auto tuning.
2. A better locality strategy. In many cases, we either have a global structure or a per cpu structure.
3. Need for a generalized tunable load balancing strategy/framework. 
Right now many subsystems have their own and cannot be tuned easily.  
For example, we were recently working on balancing requests for machines with slow but large number of cpus. We need the balancing strategy to 
be more aggressive across cpus." http://www.linuxplumbersconf.org/2013/