test init Single thread testing ===================== 1. Kmalloc: Repeatedly allocate then free test 10000 times kmalloc(8) -> 121 cycles kfree -> 173 cycles 10000 times kmalloc(16) -> 98 cycles kfree -> 172 cycles 10000 times kmalloc(32) -> 93 cycles kfree -> 172 cycles 10000 times kmalloc(64) -> 94 cycles kfree -> 172 cycles 10000 times kmalloc(128) -> 133 cycles kfree -> 175 cycles 10000 times kmalloc(256) -> 144 cycles kfree -> 187 cycles 10000 times kmalloc(512) -> 180 cycles kfree -> 241 cycles 10000 times kmalloc(1024) -> 239 cycles kfree -> 221 cycles 10000 times kmalloc(2048) -> 348 cycles kfree -> 321 cycles 10000 times kmalloc(4096) -> 490 cycles kfree -> 398 cycles 10000 times kmalloc(8192) -> 810 cycles kfree -> 608 cycles 10000 times kmalloc(16384) -> 1463 cycles kfree -> 977 cycles 10000 times kmalloc(32768) -> 1520 cycles kfree -> 1170 cycles 10000 times kmalloc(65536) -> 1610 cycles kfree -> 1351 cycles 2. Kmalloc: alloc/free test 10000 times kmalloc(8)/kfree -> 114 cycles 10000 times kmalloc(16)/kfree -> 114 cycles 10000 times kmalloc(32)/kfree -> 114 cycles 10000 times kmalloc(64)/kfree -> 114 cycles 10000 times kmalloc(128)/kfree -> 117 cycles 10000 times kmalloc(256)/kfree -> 120 cycles 10000 times kmalloc(512)/kfree -> 123 cycles 10000 times kmalloc(1024)/kfree -> 126 cycles 10000 times kmalloc(2048)/kfree -> 136 cycles 10000 times kmalloc(4096)/kfree -> 139 cycles 10000 times kmalloc(8192)/kfree -> 142 cycles 10000 times kmalloc(16384)/kfree -> 145 cycles 10000 times kmalloc(32768)/kfree -> 159 cycles 10000 times kmalloc(65536)/kfree -> 151 cycles Concurrent allocs ================= Kmalloc N*alloc N*free(8): 0=147/1214 1=144/1212 2=160/1108 3=158/1107 4=159/1151 5=160/1151 6=158/891 7=160/889 Average=156/1090 Kmalloc N*alloc N*free(16): 0=122/1231 1=121/1232 2=122/789 3=123/787 4=123/1372 5=125/1373 6=124/1085 7=125/1085 Average=123/1119 Kmalloc N*alloc N*free(32): 0=127/1033 1=133/1033 2=126/1032 3=127/1034 4=123/1411 5=125/1411 6=125/1082 7=125/1081 Average=127/1140 Kmalloc N*alloc N*free(64): 0=125/984 1=129/982 2=120/1325 3=120/1324 4=121/965 5=121/965 6=120/1128 7=121/1128 Average=122/1100 Kmalloc N*alloc N*free(128): 0=188/685 1=190/684 2=173/843 3=177/842 4=189/779 5=184/780 6=182/809 7=185/810 Average=183/779 Kmalloc N*alloc N*free(256): 0=227/586 1=227/586 2=231/549 3=231/547 4=225/575 5=228/578 6=234/662 7=232/661 Average=229/593 Kmalloc N*alloc N*free(512): 0=380/730 1=383/730 2=372/763 3=373/763 4=362/773 5=355/775 6=373/843 7=370/843 Average=371/778 Kmalloc N*alloc N*free(1024): 0=509/874 1=507/872 2=512/835 3=510/836 4=548/879 5=543/880 6=558/888 7=555/888 Average=530/869 Kmalloc N*alloc N*free(2048): 0=910/908 1=912/905 2=866/1132 3=862/1132 4=1209/1050 5=1201/1048 6=1255/1175 7=1259/1173 Average=1059/1066 Kmalloc N*alloc N*free(4096): 0=3552/1532 1=3550/1529 2=3493/1845 3=3499/1846 4=3623/1542 5=3632/1539 6=3749/1511 7=3710/1510 Average=3601/1607 Kmalloc N*alloc N*free(8192): 0=7206/3141 1=7187/3140 2=7107/3034 3=7134/3031 4=7130/3032 5=7155/3028 6=7025/3125 7=7038/3122 Average=7123/3082 Kmalloc N*alloc N*free(16384): 0=13042/3964 1=13056/3952 2=12926/4210 3=12956/4212 4=12563/3936 5=12595/3928 6=12774/4199 7=12772/4191 Average=12836/4074 Kmalloc N*(alloc free)(8): 0=116 1=116 2=116 3=116 4=117 5=116 6=116 7=116 Average=116 Kmalloc N*(alloc free)(16): 0=116 1=116 2=116 3=116 4=117 5=116 6=116 7=116 Average=116 Kmalloc N*(alloc free)(32): 0=116 1=116 2=116 3=116 4=117 5=116 6=116 7=116 Average=116 Kmalloc N*(alloc free)(64): 0=116 1=116 2=116 3=116 4=116 5=116 6=116 7=116 Average=116 Kmalloc N*(alloc free)(128): 0=119 1=119 2=119 3=119 4=120 5=119 6=119 7=119 Average=119 Kmalloc N*(alloc free)(256): 0=122 1=122 2=122 3=122 4=123 5=122 6=122 7=122 Average=122 Kmalloc N*(alloc free)(512): 0=125 1=125 2=125 3=125 4=126 5=125 6=125 7=125 Average=125 Kmalloc N*(alloc free)(1024): 0=128 1=128 2=128 3=128 4=129 5=128 6=128 7=128 Average=128 Kmalloc N*(alloc free)(2048): 0=137 1=137 2=137 3=137 4=138 5=137 6=137 7=137 Average=137 Kmalloc N*(alloc free)(4096): 0=140 1=140 2=140 3=140 4=141 5=140 6=140 7=140 Average=140 Kmalloc N*(alloc free)(8192): 0=143 1=143 2=143 3=143 4=144 5=143 6=143 7=143 Average=143 Kmalloc N*(alloc free)(16384): 0=146 1=146 2=146 3=146 4=147 5=146 6=146 7=146 Average=146 Remote free test ================ N*remote free(8): 0=8/3806 1=115/0 2=159/0 3=159/0 4=156/0 5=156/0 6=160/0 7=161/0 Average=134/475 N*remote free(16): 0=12/3836 1=118/0 2=178/0 3=180/0 4=230/0 5=226/0 6=257/0 7=251/0 Average=182/479 N*remote free(32): 0=15/3836 1=120/0 2=192/0 3=193/0 4=271/0 5=274/0 6=295/0 7=290/0 Average=206/479 N*remote free(64): 0=13/3825 1=117/0 2=191/0 3=191/0 4=287/0 5=288/0 6=320/0 7=314/0 Average=215/478 N*remote free(128): 0=12/5943 1=150/0 2=250/0 3=250/0 4=320/0 5=318/0 6=334/0 7=334/0 Average=246/743 N*remote free(256): 0=12/5912 1=169/0 2=238/0 3=238/0 4=273/0 5=271/0 6=374/0 7=371/0 Average=243/739 N*remote free(512): 0=12/6126 1=198/0 2=379/0 3=379/0 4=396/0 5=394/0 6=427/0 7=428/0 Average=327/765 N*remote free(1024): 0=11/6291 1=234/0 2=496/0 3=496/0 4=523/0 5=524/0 6=539/0 7=540/0 Average=420/786 N*remote free(2048): 0=12/6006 1=365/0 2=966/0 3=955/0 4=1218/0 5=1219/0 6=1213/0 7=1198/0 Average=893/750 N*remote free(4096): 0=9/6863 1=515/0 2=3528/0 3=3536/0 4=3283/0 5=3265/0 6=3615/0 7=3593/0 Average=2668/858 N*remote free(8192): 0=10/8935 1=860/0 2=7088/0 3=7094/0 4=6797/0 5=6819/0 6=6793/0 7=6837/0 Average=5287/1117 N*remote free(16384): 0=12/13208 1=1577/0 2=12595/0 3=12598/0 4=12615/0 5=12626/0 6=11832/0 7=11835/0 Average=9461/1651 test init Single thread testing ===================== 1. Kmalloc: Repeatedly allocate then free test 10000 times kmalloc(8) -> 125 cycles kfree -> 174 cycles 10000 times kmalloc(16) -> 90 cycles kfree -> 172 cycles 10000 times kmalloc(32) -> 90 cycles kfree -> 172 cycles 10000 times kmalloc(64) -> 89 cycles kfree -> 172 cycles 10000 times kmalloc(128) -> 134 cycles kfree -> 175 cycles 10000 times kmalloc(256) -> 142 cycles kfree -> 194 cycles 10000 times kmalloc(512) -> 187 cycles kfree -> 253 cycles 10000 times kmalloc(1024) -> 269 cycles kfree -> 225 cycles 10000 times kmalloc(2048) -> 358 cycles kfree -> 363 cycles 10000 times kmalloc(4096) -> 540 cycles kfree -> 447 cycles 10000 times kmalloc(8192) -> 791 cycles kfree -> 613 cycles 10000 times kmalloc(16384) -> 1421 cycles kfree -> 987 cycles 10000 times kmalloc(32768) -> 1489 cycles kfree -> 1181 cycles 10000 times kmalloc(65536) -> 1873 cycles kfree -> 1363 cycles 2. Kmalloc: alloc/free test 10000 times kmalloc(8)/kfree -> 115 cycles 10000 times kmalloc(16)/kfree -> 114 cycles 10000 times kmalloc(32)/kfree -> 114 cycles 10000 times kmalloc(64)/kfree -> 114 cycles 10000 times kmalloc(128)/kfree -> 117 cycles 10000 times kmalloc(256)/kfree -> 120 cycles 10000 times kmalloc(512)/kfree -> 123 cycles 10000 times kmalloc(1024)/kfree -> 126 cycles 10000 times kmalloc(2048)/kfree -> 136 cycles 10000 times kmalloc(4096)/kfree -> 139 cycles 10000 times kmalloc(8192)/kfree -> 142 cycles 10000 times kmalloc(16384)/kfree -> 145 cycles 10000 times kmalloc(32768)/kfree -> 159 cycles 10000 times kmalloc(65536)/kfree -> 151 cycles Concurrent allocs ================= Kmalloc N*alloc N*free(8): 0=155/1179 1=157/1177 2=159/1115 3=159/1116 4=146/1094 5=146/1095 6=191/1350 7=194/1351 Average=164/1185 Kmalloc N*alloc N*free(16): 0=128/1082 1=129/1082 2=127/1581 3=126/1582 4=136/1101 5=138/1101 6=132/1053 7=135/1053 Average=131/1204 Kmalloc N*alloc N*free(32): 0=124/937 1=124/936 2=128/1378 3=124/1379 4=130/1324 5=132/1325 6=127/732 7=127/734 Average=127/1093 Kmalloc N*alloc N*free(64): 0=131/1152 1=133/1152 2=128/1142 3=126/1141 4=128/1020 5=129/1021 6=123/1424 7=125/1427 Average=128/1185 Kmalloc N*alloc N*free(128): 0=186/704 1=187/703 2=181/525 3=177/525 4=190/494 5=193/492 6=187/726 7=189/729 Average=186/612 Kmalloc N*alloc N*free(256): 0=234/619 1=233/615 2=229/627 3=228/624 4=231/580 5=236/581 6=229/715 7=231/713 Average=231/634 Kmalloc N*alloc N*free(512): 0=365/884 1=367/883 2=365/900 3=367/900 4=361/825 5=364/825 6=382/818 7=390/817 Average=370/856 Kmalloc N*alloc N*free(1024): 0=495/766 1=498/765 2=493/840 3=490/840 4=542/905 5=544/904 6=535/888 7=534/888 Average=516/850 Kmalloc N*alloc N*free(2048): 0=894/1134 1=895/1133 2=910/1075 3=906/1077 4=1231/1143 5=1232/1143 6=1267/1156 7=1262/1159 Average=1075/1128 Kmalloc N*alloc N*free(4096): 0=3734/1429 1=3732/1424 2=3612/1549 3=3627/1550 4=3729/1652 5=3750/1655 6=3992/1622 7=3974/1620 Average=3769/1563 Kmalloc N*alloc N*free(8192): 0=7405/3090 1=7406/3088 2=7378/3039 3=7411/3037 4=7643/2578 5=7627/2576 6=7373/2591 7=7421/2588 Average=7458/2823 Kmalloc N*alloc N*free(16384): 0=13402/4176 1=13396/4175 2=13202/4377 3=13209/4371 4=13466/3952 5=13413/3954 6=13787/4050 7=13797/4044 Average=13459/4137 Kmalloc N*(alloc free)(8): 0=116 1=116 2=116 3=116 4=116 5=116 6=117 7=116 Average=116 Kmalloc N*(alloc free)(16): 0=116 1=116 2=116 3=116 4=116 5=116 6=117 7=116 Average=116 Kmalloc N*(alloc free)(32): 0=116 1=116 2=116 3=116 4=116 5=116 6=116 7=116 Average=116 Kmalloc N*(alloc free)(64): 0=116 1=116 2=116 3=116 4=116 5=116 6=117 7=116 Average=116 Kmalloc N*(alloc free)(128): 0=119 1=120 2=119 3=119 4=119 5=119 6=120 7=119 Average=119 Kmalloc N*(alloc free)(256): 0=122 1=122 2=122 3=122 4=122 5=122 6=123 7=122 Average=122 Kmalloc N*(alloc free)(512): 0=125 1=126 2=125 3=125 4=125 5=125 6=125 7=125 Average=125 Kmalloc N*(alloc free)(1024): 0=128 1=128 2=128 3=128 4=128 5=128 6=129 7=128 Average=128 Kmalloc N*(alloc free)(2048): 0=137 1=137 2=137 3=137 4=137 5=137 6=138 7=137 Average=137 Kmalloc N*(alloc free)(4096): 0=140 1=141 2=141 3=140 4=140 5=140 6=141 7=140 Average=140 Kmalloc N*(alloc free)(8192): 0=143 1=143 2=144 3=143 4=143 5=143 6=144 7=143 Average=143 Kmalloc N*(alloc free)(16384): 0=146 1=146 2=147 3=146 4=146 5=146 6=147 7=146 Average=146 Remote free test ================ N*remote free(8): 0=8/3807 1=111/0 2=158/0 3=157/0 4=153/0 5=152/0 6=158/0 7=157/0 Average=132/476 N*remote free(16): 0=14/3821 1=119/0 2=187/0 3=187/0 4=267/0 5=268/0 6=290/0 7=293/0 Average=203/477 N*remote free(32): 0=13/3829 1=118/0 2=194/0 3=193/0 4=263/0 5=265/0 6=289/0 7=291/0 Average=203/478 N*remote free(64): 0=14/3830 1=118/0 2=191/0 3=191/0 4=275/0 5=276/0 6=302/0 7=295/0 Average=208/478 N*remote free(128): 0=13/5951 1=150/0 2=233/0 3=233/0 4=262/0 5=257/0 6=280/0 7=277/0 Average=213/744 N*remote free(256): 0=13/5917 1=166/0 2=245/0 3=243/0 4=289/0 5=291/0 6=362/0 7=365/0 Average=247/739 N*remote free(512): 0=12/6137 1=200/0 2=385/0 3=385/0 4=383/0 5=383/0 6=439/0 7=441/0 Average=329/767 N*remote free(1024): 0=11/6295 1=233/0 2=499/0 3=495/0 4=535/0 5=534/0 6=534/0 7=532/0 Average=422/787 N*remote free(2048): 0=12/6052 1=359/0 2=924/0 3=930/0 4=1244/0 5=1244/0 6=1176/0 7=1164/0 Average=882/756 N*remote free(4096): 0=10/6878 1=506/0 2=3636/0 3=3642/0 4=3319/0 5=3366/0 6=3666/0 7=3656/0 Average=2725/859 N*remote free(8192): 0=11/8972 1=845/0 2=6983/0 3=7010/0 4=6842/0 5=6856/0 6=6889/0 7=6869/0 Average=5288/1121 N*remote free(16384): 0=12/13252 1=1538/0 2=12846/0 3=12786/0 4=12854/0 5=12823/0 6=12065/0 7=12051/0 Average=9622/1656