cache aware patch
ã»ã¼æçµåã®ããããhttp://marc.theaimsgroup.com/?l=linux-kernel&m=112556596103063&w=2ã«ããã
ã¾ã¥ãæ§è½ãã¼ã¿ã¯ã¨ããã¨ãã¯ããã¯æ°ã¯ä¸è¨ã®ã¨ãããç´10æ°ãã¼ã»ã³ã忏ããã¦ããã
Total of GLOBAL_POWER_EVENTS (CPU cycle samples) 2.6.12.4.orig 1921587 2.6.12.4.nt 1599424 1599424/1921587=83.23% (16.77% reduction)
ãã£ãã·ã¥ãã¹ã¯6å²ãã7å²åæ¸ã§ãã¦ãã¦ãï¼57427ãã20858ã¸ï¼
BSQ_CACHE_REFERENCE (L3 cache miss) 2.6.12.4.orig 57427 2.6.12.4.nt 20858 20858/57427=36.32% (63.7% reduction)
__copy_from_user_ll()ã«ããã£ã¦ã¯ããã£ãã·ã¥ãã¹ãã»ã¨ãã©0ï¼37408åã®ãã£ãã·ã¥ãã¹ãã23åï¼ã«ãªã£ã¦ããã
L3 cache miss reduction of __copy_from_user_ll samples % 37408 65.1412 vmlinux __copy_from_user_ll 23 0.1103 vmlinux __copy_user_zeroing_intel_nocache 23/37408=0.061% (99.94% reduction)
ãããã®ãã¢ã®é¨åã¯
+ "2: movl 0(%4), %%eax\n" + "21: movl 4(%4), %%edx\n" + " movnti %%eax, 0(%3)\n" + " movnti %%edx, 4(%3)\n"
ã®MOVNTIå½ä»¤ã§ãããããããã£ãã·ã¥ãå©ç¨ããªãMOVEå½ä»¤ã§ããããã£ãã·ã¥ãå©ç¨ããªãã®ã§æéç屿æ§ã®ãããã¼ã¿ããã£ãã·ã¥ãã追ãåºããããã¨ãé²ããã¾ãè¨ã£ã¦ã¿ãã°ããã ãã®è©±ã§ããã