IA-32 Microcode Update Driver: v1.14a total time: 12.127552 s (8000000/8000000) total time: 12.248771 s (8000000/8000000) total time: 11.448327 s (8000000/8000000) total time: 11.752655 s (8000000/8000000) Single thread testing ===================== 1. Kmalloc: Repeatedly allocate then free test 10000 times kmalloc(8) -> 105 cycles kfree -> 129 cycles 10000 times kmalloc(16) -> 92 cycles kfree -> 128 cycles 10000 times kmalloc(32) -> 91 cycles kfree -> 127 cycles 10000 times kmalloc(64) -> 105 cycles kfree -> 129 cycles 10000 times kmalloc(128) -> 125 cycles kfree -> 156 cycles 10000 times kmalloc(256) -> 175 cycles kfree -> 159 cycles 10000 times kmalloc(512) -> 248 cycles kfree -> 186 cycles 10000 times kmalloc(1024) -> 370 cycles kfree -> 233 cycles 10000 times kmalloc(2048) -> 587 cycles kfree -> 360 cycles 10000 times kmalloc(4096) -> 1050 cycles kfree -> 591 cycles 10000 times kmalloc(8192) -> 1107 cycles kfree -> 723 cycles 10000 times kmalloc(16384) -> 1242 cycles kfree -> 858 cycles 2. Kmalloc: alloc/free test 10000 times kmalloc(8)/kfree -> 139 cycles 10000 times kmalloc(16)/kfree -> 139 cycles 10000 times kmalloc(32)/kfree -> 139 cycles 10000 times kmalloc(64)/kfree -> 141 cycles 10000 times kmalloc(128)/kfree -> 143 cycles 10000 times kmalloc(256)/kfree -> 145 cycles 10000 times kmalloc(512)/kfree -> 148 cycles 10000 times kmalloc(1024)/kfree -> 147 cycles 10000 times kmalloc(2048)/kfree -> 148 cycles 10000 times kmalloc(4096)/kfree -> 151 cycles 10000 times kmalloc(8192)/kfree -> 171 cycles 10000 times kmalloc(16384)/kfree -> 151 cycles Concurrent allocs ================= Kmalloc N*alloc N*free(8): 0=1181/354 1=1200/647 2=1159/349 3=1198/642 4=1150/336 5=1208/643 6=1116/341 7=1191/638 Average=1175/494 Kmalloc N*alloc N*free(16): 0=1064/348 1=1109/645 2=1057/327 3=1099/641 4=1051/340 5=1116/639 6=1035/340 7=1106/644 Average=1080/491 Kmalloc N*alloc N*free(32): 0=1126/344 1=1041/648 2=1124/338 3=1050/653 4=1123/352 5=1093/646 6=1124/333 7=1014/650 Average=1087/496 Kmalloc N*alloc N*free(64): 0=1635/410 1=1700/655 2=1639/409 3=1697/652 4=1555/391 5=1679/649 6=1577/412 7=1705/656 Average=1648/529 Kmalloc N*alloc N*free(128): 0=3171/464 1=3256/840 2=3123/478 3=3258/808 4=3177/516 5=3229/851 6=3227/488 7=3261/850 Average=3213/662 Kmalloc N*alloc N*free(256): 0=6510/679 1=6682/1145 2=6579/703 3=6677/1135 4=6368/641 5=6661/1086 6=6489/653 7=6694/1087 Average=6583/891 Kmalloc N*alloc N*free(512): 0=13224/1125 1=13237/2133 2=13230/1144 3=13226/2135 4=13194/1157 5=13133/2054 6=13103/1218 7=13166/2031 Average=13189/1625 Kmalloc N*alloc N*free(1024): 0=26398/1726 1=26151/3119 2=26409/1739 3=26199/3117 4=26380/1779 5=26024/3035 6=26395/1764 7=25818/3052 Average=26222/2417 Kmalloc N*alloc N*free(2048): 0=51528/3976 1=51845/5951 2=51624/3904 3=51962/5932 4=51052/3819 5=51990/5692 6=51360/3839 7=51981/5683 Average=51668/4849 Kmalloc N*alloc N*free(4096): 0=104661/6134 1=105064/10188 2=104939/6033 3=105063/10234 4=105022/6197 5=104924/10070 6=105032/6322 7=105039/10002 Average=104968/8148 Kmalloc N*(alloc free)(8): 0=140 1=140 2=140 3=140 4=140 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(16): 0=140 1=140 2=140 3=140 4=140 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(32): 0=140 1=140 2=140 3=140 4=140 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(64): 0=143 1=143 2=143 3=143 4=143 5=143 6=143 7=143 Average=143 Kmalloc N*(alloc free)(128): 0=144 1=144 2=144 3=144 4=144 5=144 6=144 7=144 Average=144 Kmalloc N*(alloc free)(256): 0=146 1=146 2=146 3=146 4=146 5=146 6=146 7=146 Average=146 Kmalloc N*(alloc free)(512): 0=148 1=148 2=148 3=148 4=148 5=148 6=148 7=148 Average=148 Kmalloc N*(alloc free)(1024): 0=149 1=149 2=149 3=149 4=149 5=149 6=149 7=149 Average=149 Kmalloc N*(alloc free)(2048): 0=148 1=148 2=148 3=148 4=148 5=148 6=148 7=148 Average=148 Kmalloc N*(alloc free)(4096): 0=150 1=150 2=150 3=150 4=150 5=150 6=150 7=150 Average=150 Remote free test ================ N*remote free(8): 0=9/1036 1=670/0 2=366/0 3=667/0 4=461/0 5=676/0 6=466/0 7=676/0 Average=499/129 N*remote free(16): 0=5/1036 1=642/0 2=430/0 3=667/0 4=523/0 5=668/0 6=524/0 7=666/0 Average=516/129 N*remote free(32): 0=5/1038 1=624/0 2=366/0 3=628/0 4=487/0 5=638/0 6=474/0 7=636/0 Average=482/129 N*remote free(64): 0=6/1100 1=776/0 2=410/0 3=793/0 4=566/0 5=796/0 6=572/0 7=799/0 Average=590/137 N*remote free(128): 0=7/1212 1=1496/0 2=824/0 3=1526/0 4=1134/0 5=1514/0 6=1134/0 7=1522/0 Average=1145/151 N*remote free(256): 0=8/1405 1=3012/0 2=1542/0 3=3076/0 4=2095/0 5=3059/0 6=2115/0 7=3046/0 Average=2244/175 N*remote free(512): 0=10/1849 1=5059/0 2=982/0 3=5087/0 4=1825/0 5=5091/0 6=1828/0 7=5053/0 Average=3117/231 N*remote free(1024): 0=13/2473 1=12352/0 2=5604/0 3=12334/0 4=7808/0 5=12352/0 6=7772/0 7=12265/0 Average=8813/309 N*remote free(2048): 0=8/4224 1=23923/0 2=10663/0 3=23888/0 4=14505/0 5=23936/0 6=14540/0 7=23949/0 Average=16926/528 N*remote free(4096): 0=11/7842 1=46193/0 2=21104/0 3=46159/0 4=27811/0 5=45997/0 6=27615/0 7=46203/0 Average=32637/980 test init Single thread testing ===================== 1. Kmalloc: Repeatedly allocate then free test 10000 times kmalloc(8) -> 117 cycles kfree -> 129 cycles 10000 times kmalloc(16) -> 90 cycles kfree -> 127 cycles 10000 times kmalloc(32) -> 90 cycles kfree -> 129 cycles 10000 times kmalloc(64) -> 107 cycles kfree -> 127 cycles 10000 times kmalloc(128) -> 129 cycles kfree -> 137 cycles 10000 times kmalloc(256) -> 164 cycles kfree -> 150 cycles 10000 times kmalloc(512) -> 240 cycles kfree -> 191 cycles 10000 times kmalloc(1024) -> 368 cycles kfree -> 236 cycles 10000 times kmalloc(2048) -> 619 cycles kfree -> 361 cycles 10000 times kmalloc(4096) -> 1040 cycles kfree -> 588 cycles 10000 times kmalloc(8192) -> 1085 cycles kfree -> 718 cycles 10000 times kmalloc(16384) -> 1226 cycles kfree -> 853 cycles 2. Kmalloc: alloc/free test 10000 times kmalloc(8)/kfree -> 139 cycles 10000 times kmalloc(16)/kfree -> 139 cycles 10000 times kmalloc(32)/kfree -> 139 cycles 10000 times kmalloc(64)/kfree -> 141 cycles 10000 times kmalloc(128)/kfree -> 143 cycles 10000 times kmalloc(256)/kfree -> 145 cycles 10000 times kmalloc(512)/kfree -> 148 cycles 10000 times kmalloc(1024)/kfree -> 147 cycles 10000 times kmalloc(2048)/kfree -> 148 cycles 10000 times kmalloc(4096)/kfree -> 151 cycles 10000 times kmalloc(8192)/kfree -> 171 cycles 10000 times kmalloc(16384)/kfree -> 151 cycles Concurrent allocs ================= Kmalloc N*alloc N*free(8): 0=1149/387 1=1200/645 2=1140/374 3=1198/630 4=1132/376 5=1188/645 6=1128/375 7=1200/645 Average=1167/510 Kmalloc N*alloc N*free(16): 0=1086/326 1=1139/628 2=1120/320 3=1141/625 4=1107/345 5=1138/622 6=1094/338 7=1149/622 Average=1122/478 Kmalloc N*alloc N*free(32): 0=1100/349 1=1144/637 2=1116/331 3=1123/625 4=1141/344 5=1145/635 6=1123/331 7=1133/629 Average=1128/485 Kmalloc N*alloc N*free(64): 0=1412/445 1=1548/674 2=1447/433 3=1575/674 4=1498/443 5=1546/671 6=1483/443 7=1570/660 Average=1510/555 Kmalloc N*alloc N*free(128): 0=3209/477 1=2991/836 2=3208/463 3=3107/830 4=3195/453 5=3148/800 6=3201/449 7=3161/801 Average=3152/639 Kmalloc N*alloc N*free(256): 0=6677/551 1=6780/1086 2=6733/506 3=6747/1084 4=6656/602 5=6782/990 6=6534/613 7=6787/992 Average=6712/803 Kmalloc N*alloc N*free(512): 0=12844/1144 1=13044/2106 2=12719/1119 3=13022/2102 4=12875/1194 5=13043/2017 6=12860/1205 7=13033/2013 Average=12930/1612 Kmalloc N*alloc N*free(1024): 0=26726/1712 1=26791/3148 2=26691/1708 3=26780/3147 4=26743/1708 5=26752/3041 6=26750/1805 7=26777/3055 Average=26751/2415 Kmalloc N*alloc N*free(2048): 0=52183/3644 1=51177/5921 2=52178/3696 3=51717/5901 4=52064/3510 5=51900/5697 6=52143/3542 7=51887/5683 Average=51906/4699 Kmalloc N*alloc N*free(4096): 0=104546/6068 1=104640/9808 2=104490/5887 3=104625/9696 4=104460/6233 5=104551/9968 6=104220/6331 7=104595/9997 Average=104516/7999 Kmalloc N*(alloc free)(8): 0=140 1=140 2=140 3=140 4=140 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(16): 0=140 1=140 2=140 3=140 4=140 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(32): 0=140 1=140 2=140 3=140 4=140 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(64): 0=143 1=143 2=143 3=143 4=143 5=143 6=143 7=143 Average=143 Kmalloc N*(alloc free)(128): 0=144 1=144 2=144 3=144 4=144 5=144 6=144 7=144 Average=144 Kmalloc N*(alloc free)(256): 0=146 1=146 2=146 3=146 4=146 5=146 6=146 7=146 Average=146 Kmalloc N*(alloc free)(512): 0=148 1=148 2=148 3=148 4=148 5=148 6=148 7=148 Average=148 Kmalloc N*(alloc free)(1024): 0=149 1=149 2=149 3=149 4=149 5=149 6=149 7=149 Average=149 Kmalloc N*(alloc free)(2048): 0=148 1=148 2=148 3=148 4=148 5=148 6=148 7=148 Average=148 Kmalloc N*(alloc free)(4096): 0=150 1=150 2=150 3=150 4=150 5=150 6=150 7=150 Average=150 Remote free test ================ N*remote free(8): 0=9/1033 1=689/0 2=346/0 3=674/0 4=489/0 5=679/0 6=484/0 7=675/0 Average=506/129 N*remote free(16): 0=5/1036 1=619/0 2=357/0 3=629/0 4=456/0 5=628/0 6=454/0 7=629/0 Average=472/129 N*remote free(32): 0=5/1056 1=619/0 2=366/0 3=611/0 4=458/0 5=616/0 6=459/0 7=621/0 Average=469/132 N*remote free(64): 0=7/1104 1=792/0 2=431/0 3=786/0 4=558/0 5=795/0 6=588/0 7=801/0 Average=595/138 N*remote free(128): 0=8/1213 1=1529/0 2=859/0 3=1548/0 4=1069/0 5=1543/0 6=1110/0 7=1545/0 Average=1151/151 N*remote free(256): 0=8/1399 1=3086/0 2=1548/0 3=3099/0 4=2064/0 5=3068/0 6=2084/0 7=3082/0 Average=2255/174 N*remote free(512): 0=8/1839 1=6067/0 2=2928/0 3=6068/0 4=3976/0 5=6061/0 6=3925/0 7=6008/0 Average=4380/229 N*remote free(1024): 0=13/2461 1=12147/0 2=5308/0 3=12161/0 4=7480/0 5=12140/0 6=7554/0 7=12129/0 Average=8616/307 N*remote free(2048): 0=9/4229 1=23907/0 2=10667/0 3=23969/0 4=14576/0 5=23926/0 6=14585/0 7=23965/0 Average=16950/528 N*remote free(4096): 0=12/7858 1=46210/0 2=21113/0 3=46228/0 4=27812/0 5=46147/0 6=27665/0 7=46147/0 Average=32667/982