From: Eric Dumazet Date: Sat, 15 Jun 2013 10:30:10 +0000 (-0700) Subject: htb: refactor struct htb_sched fields for performance X-Git-Tag: v3.11-rc1~16^2~33 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c9364636dcb01a6fc37ca2c6a51c5aa0c663013c;p=pandora-kernel.git htb: refactor struct htb_sched fields for performance htb_sched structures are big, and source of false sharing on SMP. Every time a packet is queued or dequeue, many cache lines must be touched because structures are not lay out properly. By carefully splitting htb_sched in two parts, and define sub structures to increase data locality, we can improve performance dramatically on SMP. New htb_prio structure can also be used in htb_class to increase data locality. I got 26 % performance increase on a 24 threads machine, with 200 concurrent netperf in TCP_RR mode, using a HTB hierarchy of 4 classes. Signed-off-by: Eric Dumazet Cc: Tom Herbert Signed-off-by: David S. Miller --- Reading git-diff-tree failed