Apple Microarchitecture Research by Dougall Johnson M1/A14 P-core (Firestorm): Overview | Base Instructions | SIMD and FP Instructions M1/A14 E-core (Icestorm): Overview | Base Instructions | SIMD and FP Instructions
Code:
usra v0.16b, v1.16b, #3
movi v0.16b, 1 movi v1.16b, 2
(no loop instructions)
Retires: 1.000
Issues: 1.000
Integer unit issues: 0.000
Load/store unit issues: 0.000
SIMD/FP unit issues: 1.000
retire uop (01) | cycle (02) | 03 | mmu table walk data (08) | l2 tlb miss data (0b) | 18 | 19 | 1e | 1f | 3f | 4e | 51 | schedule uop (52) | schedule simd uop (54) | dispatch simd uop (57) | ldst uops in schedulers (5b) | 60 | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map simd uop (7e) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst simd alu (9a) | l1d tlb miss (a1) | ld unit uop (a6) | l1d cache writeback (a8) | a9 | ac | cf | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? simd retires (ee) | f5 | f6 | f7 | f8 | fd |
1004 | 3037 | 24 | 0 | 0 | 0 | 0 | 0 | 0 | 61 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2667 | 1000 | 3107 | 3084 | 3086 | 3086 | 3086 |
1004 | 3083 | 23 | 1 | 1 | 1 | 1 | 12 | 88 | 741 | 2539 | 49 | 1008 | 1000 | 1149 | 399670 | 0 | 3054 | 3112 | 3084 | 2418 | 6 | 2914 | 1000 | 1000 | 2336 | 3083 | 3085 | 1 | 1 | 1001 | 1000 | 2 | 0 | 0 | 0 | 2803 | 79 | 1 | 40 | 1 | 1 | 2659 | 1000 | 3085 | 3086 | 3086 | 3086 | 3085 |
1004 | 3085 | 24 | 1 | 0 | 1 | 0 | 132 | 88 | 1064 | 2539 | 44 | 1008 | 1000 | 1149 | 399670 | 0 | 3054 | 3085 | 3084 | 2415 | 7 | 2914 | 1149 | 1168 | 2326 | 3084 | 3085 | 2 | 1 | 1001 | 1000 | 0 | 0 | 2 | 2 | 2840 | 94 | 1 | 24 | 1 | 1 | 2665 | 1000 | 3086 | 3085 | 3038 | 3038 | 3085 |
1004 | 3084 | 24 | 0 | 0 | 2 | 1 | 147 | 88 | 704 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
1004 | 3037 | 23 | 0 | 0 | 0 | 0 | 0 | 0 | 61 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 3 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
1004 | 3037 | 24 | 0 | 0 | 0 | 0 | 12 | 0 | 61 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
1004 | 3037 | 24 | 0 | 0 | 0 | 0 | 0 | 0 | 346 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
1004 | 3037 | 23 | 0 | 0 | 0 | 0 | 0 | 0 | 61 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 4 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
1004 | 3037 | 23 | 0 | 0 | 0 | 0 | 0 | 0 | 61 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 0 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
1004 | 3037 | 23 | 0 | 0 | 0 | 0 | 0 | 0 | 61 | 2548 | 25 | 1000 | 1000 | 1000 | 398313 | 1 | 3018 | 3037 | 3037 | 2415 | 3 | 2895 | 1000 | 1000 | 2000 | 3037 | 3037 | 1 | 1 | 1001 | 1000 | 0 | 0 | 0 | 0 | 0 | 73 | 1 | 16 | 1 | 1 | 2630 | 1000 | 3038 | 3038 | 3038 | 3038 | 3038 |
Code:
usra v0.16b, v1.16b, #3
movi v0.16b, 1 movi v1.16b, 2
(fused SUBS/B.cc loop)
Result (median cycles for code): 3.0037
retire uop (01) | cycle (02) | 03 | 1e | 3f | 4e | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 60 | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | l1d tlb access (a0) | l1d tlb miss (a1) | l1d cache writeback (a8) | ac | cf | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
10204 | 30037 | 232 | 0 | 187 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 0 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 1 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 232 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 11058 | 710 | 1 | 16 | 1 | 2 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 0 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 12 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30086 | 30086 | 30135 | 30085 | 30038 |
10204 | 30037 | 233 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 0 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 33 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 232 | 0 | 103 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 232 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 61 | 29548 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277313 | 1 | 30018 | 30037 | 30037 | 28265 | 3 | 28745 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 710 | 1 | 16 | 1 | 1 | 29634 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
Result (median cycles for code): 3.0037
retire uop (01) | cycle (02) | 03 | mmu table walk data (08) | 09 | l2 tlb miss data (0b) | 18 | 19 | 1e | 1f | 3a | 3f | 4e | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 60 | 61 | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | l1d tlb access (a0) | l1d tlb miss (a1) | ld unit uop (a6) | st unit uop (a7) | l1d cache writeback (a8) | a9 | ac | c2 | cf | d0 | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? int output thing (e9) | ec | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
10024 | 30037 | 233 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1000 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 3 | 16 | 3 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 232 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1167 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 4 | 16 | 4 | 3 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1194 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 4 | 16 | 4 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 61 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 4 | 16 | 3 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30085 | 30085 | 30085 | 30038 |
10024 | 30037 | 241 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1289 | 29548 | 25 | 10017 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 4 | 16 | 4 | 3 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1078 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 3 | 16 | 4 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1180 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 15 | 0 | 640 | 5 | 4 | 16 | 4 | 3 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 225 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1092 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 4 | 16 | 4 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 225 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 968 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 3 | 16 | 3 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 225 | 0 | 0 | 0 | 0 | 0 | 189 | 0 | 0 | 875 | 29548 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277313 | 1 | 5 | 30018 | 30037 | 30037 | 28287 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 640 | 5 | 4 | 16 | 3 | 4 | 29630 | 0 | 0 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
Code:
usra v0.16b, v0.16b, #3
movi v0.16b, 1
(fused SUBS/B.cc loop)
Result (median cycles for code): 3.0037
retire uop (01) | cycle (02) | 03 | mmu table walk data (08) | 1e | 3a | 3f | 4e | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 60 | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | l1d tlb access (a0) | l1d tlb miss (a1) | l1d cache writeback (a8) | a9 | ac | branch cond mispred nonspec (c5) | branch mispred nonspec (cb) | cd | cf | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
10204 | 30037 | 233 | 0 | 72 | 1 | 97 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28252 | 6 | 28733 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 722 | 3 | 24 | 2 | 2 | 29629 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 66 | 1 | 97 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28252 | 6 | 28733 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 722 | 3 | 31 | 2 | 2 | 29629 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 232 | 0 | 0 | 1 | 97 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28252 | 6 | 28733 | 10100 | 200 | 10000 | 200 | 20000 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 722 | 5 | 24 | 2 | 2 | 29629 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28271 | 7 | 28741 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 717 | 0 | 16 | 0 | 0 | 29645 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28271 | 7 | 28741 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 718 | 0 | 16 | 0 | 0 | 29645 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28271 | 7 | 28741 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 717 | 0 | 16 | 0 | 0 | 29717 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28292 | 7 | 28741 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 717 | 0 | 16 | 0 | 0 | 29646 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 1 | 30018 | 30037 | 30037 | 28271 | 6 | 28740 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 718 | 0 | 16 | 0 | 0 | 29645 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28271 | 7 | 28741 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 718 | 0 | 16 | 0 | 0 | 29646 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
10204 | 30037 | 233 | 0 | 0 | 0 | 726 | 29547 | 25 | 10100 | 100 | 10000 | 100 | 10000 | 500 | 4277160 | 0 | 30018 | 30037 | 30037 | 28271 | 6 | 28740 | 10100 | 200 | 10008 | 200 | 20016 | 30037 | 30037 | 1 | 1 | 10201 | 100 | 99 | 100 | 100 | 10000 | 100 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 717 | 0 | 16 | 0 | 0 | 29645 | 10000 | 100 | 30038 | 30038 | 30038 | 30038 | 30038 |
Result (median cycles for code): 3.0037
retire uop (01) | cycle (02) | 03 | 18 | 1e | 1f | 3f | 4e | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | l1d cache writeback (a8) | ac | c2 | cf | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
10024 | 30037 | 233 | 0 | 12 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 3 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30085 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 241 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 1 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 232 | 0 | 0 | 0 | 441 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 233 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 241 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
10024 | 30037 | 232 | 0 | 0 | 0 | 61 | 29547 | 25 | 10010 | 10 | 10000 | 10 | 10000 | 50 | 4277160 | 30018 | 30037 | 30037 | 28286 | 3 | 28767 | 10010 | 20 | 10000 | 20 | 20000 | 30037 | 30037 | 1 | 1 | 10021 | 10 | 9 | 10 | 10 | 10000 | 10 | 0 | 0 | 0 | 640 | 2 | 16 | 2 | 2 | 29629 | 10000 | 10 | 30038 | 30038 | 30038 | 30038 | 30038 |
Count: 8
Code:
movi v0.16b, 0 usra v0.16b, v8.16b, #3 movi v1.16b, 0 usra v1.16b, v8.16b, #3 movi v2.16b, 0 usra v2.16b, v8.16b, #3 movi v3.16b, 0 usra v3.16b, v8.16b, #3 movi v4.16b, 0 usra v4.16b, v8.16b, #3 movi v5.16b, 0 usra v5.16b, v8.16b, #3 movi v6.16b, 0 usra v6.16b, v8.16b, #3 movi v7.16b, 0 usra v7.16b, v8.16b, #3
movi v8.16b, 9
(fused SUBS/B.cc loop)
Result (median cycles for code divided by count): 0.2508
retire uop (01) | cycle (02) | 03 | 1e | 3f | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 69 | 6d | 6e | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | l1d tlb access (a0) | l1d tlb miss (a1) | l1d cache writeback (a8) | ac | branch cond mispred nonspec (c5) | branch mispred nonspec (cb) | cd | cf | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? int output thing (e9) | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
160204 | 20065 | 155 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 3 | 1 | 1 | 1 | 10119 | 2 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 155 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 155 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 156 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 155 | 12 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 155 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 155 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 7 | 2 | 1 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 156 | 0 | 29 | 25 | 80116 | 100 | 80016 | 100 | 80028 | 500 | 640196 | 20045 | 20065 | 20065 | 6 | 12 | 80128 | 200 | 80028 | 200 | 160056 | 20065 | 20065 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10119 | 0 | 16 | 0 | 0 | 20062 | 0 | 160000 | 100 | 20066 | 20066 | 20066 | 20066 | 20066 |
160204 | 20065 | 161 | 0 | 65 | 29 | 80119 | 100 | 80019 | 100 | 80031 | 500 | 640220 | 20056 | 20077 | 20077 | 10 | 12 | 80131 | 200 | 80031 | 200 | 160062 | 20077 | 20078 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 10130 | 1 | 23 | 1 | 1 | 20074 | 0 | 160000 | 100 | 20078 | 20078 | 20078 | 20078 | 20078 |
160204 | 20077 | 156 | 0 | 65 | 29 | 80119 | 100 | 80019 | 100 | 80031 | 500 | 640220 | 20056 | 20077 | 20078 | 9 | 12 | 80131 | 200 | 80031 | 200 | 160062 | 20077 | 20077 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 10130 | 1 | 23 | 1 | 1 | 20074 | 0 | 160000 | 100 | 20078 | 20079 | 20079 | 20078 | 20078 |
Result (median cycles for code divided by count): 0.2506
retire uop (01) | cycle (02) | 03 | 1e | 3f | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 5f | 60 | 61 | 69 | 6d | 6e | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | ld unit uop (a6) | l1d cache writeback (a8) | ac | cf | d0 | d2 | l1i cache miss demand (d3) | d5 | map dispatch bubble (d6) | d9 | da | db | dd | fetch restart (de) | e0 | ea | ec | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
160024 | 20085 | 150 | 12 | 87 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20033 | 20060 | 20060 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20060 | 20060 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10038 | 11 | 11 | 2 | 36 | 34 | 4 | 2 | 1 | 17 | 12 | 20057 | 40 | 2 | 160000 | 10 | 20052 | 20061 | 20061 | 20061 | 20052 |
160024 | 20060 | 150 | 12 | 51 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 0 | 1 | 5 | 20041 | 20060 | 20060 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20060 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10041 | 11 | 4 | 2 | 12 | 34 | 4 | 2 | 1 | 12 | 13 | 20057 | 40 | 1 | 160000 | 10 | 20061 | 20061 | 20052 | 20061 | 20061 |
160024 | 20060 | 150 | 0 | 51 | 29 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20060 | 20060 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10037 | 8 | 5 | 2 | 13 | 34 | 4 | 2 | 2 | 18 | 17 | 20057 | 40 | 1 | 160000 | 10 | 20061 | 20061 | 20061 | 20061 | 20052 |
160024 | 20051 | 151 | 12 | 93 | 29 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 0 | 1 | 5 | 20041 | 20069 | 20060 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20060 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10037 | 8 | 5 | 1 | 13 | 25 | 4 | 2 | 2 | 13 | 13 | 20057 | 40 | 1 | 160000 | 10 | 20061 | 20061 | 20061 | 20061 | 20052 |
160024 | 20060 | 150 | 0 | 45 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20051 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 34 | 0 | 10037 | 8 | 4 | 1 | 15 | 25 | 2 | 9 | 1 | 17 | 11 | 20048 | 20 | 1 | 160000 | 10 | 20052 | 20052 | 20052 | 20052 | 20052 |
160024 | 20051 | 151 | 12 | 45 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20051 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10035 | 8 | 4 | 1 | 12 | 25 | 2 | 1 | 1 | 13 | 19 | 20048 | 20 | 1 | 160000 | 10 | 20052 | 20052 | 20052 | 20052 | 20052 |
160024 | 20051 | 150 | 12 | 202 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20051 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10037 | 8 | 4 | 1 | 11 | 25 | 2 | 1 | 1 | 19 | 14 | 20048 | 20 | 1 | 160000 | 10 | 20052 | 20052 | 20052 | 20052 | 20052 |
160024 | 20051 | 150 | 0 | 45 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20051 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10036 | 8 | 4 | 1 | 13 | 25 | 2 | 1 | 1 | 11 | 13 | 20048 | 20 | 1 | 160000 | 10 | 20052 | 20052 | 20052 | 20052 | 20052 |
160024 | 20051 | 151 | 0 | 45 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20051 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10037 | 8 | 4 | 1 | 13 | 25 | 2 | 1 | 1 | 14 | 12 | 20048 | 20 | 1 | 160000 | 10 | 20052 | 20052 | 20052 | 20052 | 20052 |
160024 | 20051 | 150 | 0 | 45 | 27 | 80010 | 10 | 80000 | 10 | 80000 | 50 | 640000 | 1 | 1 | 5 | 20032 | 20051 | 20051 | 3 | 22 | 80010 | 20 | 80000 | 20 | 160000 | 20051 | 20051 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 10041 | 8 | 4 | 1 | 13 | 25 | 2 | 1 | 1 | 11 | 14 | 20048 | 20 | 1 | 160000 | 10 | 20052 | 20052 | 20052 | 20052 | 20052 |
Count: 16
Code:
usra v0.16b, v16.16b, #3 usra v1.16b, v16.16b, #3 usra v2.16b, v16.16b, #3 usra v3.16b, v16.16b, #3 usra v4.16b, v16.16b, #3 usra v5.16b, v16.16b, #3 usra v6.16b, v16.16b, #3 usra v7.16b, v16.16b, #3 usra v8.16b, v16.16b, #3 usra v9.16b, v16.16b, #3 usra v10.16b, v16.16b, #3 usra v11.16b, v16.16b, #3 usra v12.16b, v16.16b, #3 usra v13.16b, v16.16b, #3 usra v14.16b, v16.16b, #3 usra v15.16b, v16.16b, #3
movi v16.16b, 17
(fused SUBS/B.cc loop)
Result (median cycles for code divided by count): 0.2502
retire uop (01) | cycle (02) | 03 | 18 | 19 | 1e | 3f | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 60 | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | l1d tlb access (a0) | l1d tlb miss (a1) | ld unit uop (a6) | st unit uop (a7) | l1d cache writeback (a8) | ac | c2 | branch cond mispred nonspec (c5) | branch mispred nonspec (cb) | cd | cf | d5 | map dispatch bubble (d6) | dd | fetch restart (de) | e0 | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
160204 | 40057 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 0 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 3 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 311 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 0 | 40020 | 40039 | 40039 | 19977 | 12 | 20045 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 0 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 0 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 1 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 0 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 311 | 0 | 0 | 36 | 1175 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 0 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10136 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 1 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40197 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 72 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280132 | 1 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
160204 | 40039 | 310 | 0 | 0 | 0 | 30 | 25 | 160108 | 100 | 160008 | 100 | 160020 | 500 | 1280788 | 0 | 40020 | 40039 | 40039 | 19977 | 6 | 19990 | 160120 | 200 | 160032 | 200 | 320064 | 40039 | 40039 | 1 | 1 | 160201 | 100 | 99 | 100 | 100 | 160000 | 100 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 10118 | 0 | 16 | 0 | 0 | 40036 | 160000 | 100 | 40040 | 40040 | 40040 | 40040 | 40040 |
Result (median cycles for code divided by count): 0.2502
retire uop (01) | cycle (02) | 03 | l1i tlb fill (04) | mmu table walk instruction (07) | l2 tlb miss data (0b) | 18 | 19 | 1e | 1f | 35 | 3f | 51 | schedule uop (52) | schedule int uop (53) | schedule simd uop (54) | dispatch int uop (56) | dispatch simd uop (57) | int uops in schedulers (59) | ldst uops in schedulers (5b) | 5f | 60 | 69 | 6d | 6e | map stall dispatch (70) | map rewind (75) | map stall (76) | dispatch uop (78) | map int uop (7c) | map simd uop (7e) | map int uop inputs (7f) | map simd uop inputs (81) | 82 | 83 | flush restart other nonspec (84) | 85 | inst all (8c) | inst branch (8d) | inst branch taken (90) | inst branch cond (94) | inst int alu (97) | inst simd alu (9a) | 9f | ld unit uop (a6) | l1d cache writeback (a8) | a9 | ac | cf | d0 | d2 | l1i cache miss demand (d3) | d5 | map dispatch bubble (d6) | d9 | da | db | dd | fetch restart (de) | e0 | ea | eb | ? simd retires (ee) | ? int retires (ef) | f5 | f6 | f7 | f8 | fd |
160024 | 40050 | 310 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1625 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 0 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40111 | 2 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10024 | 6 | 2 | 2 | 5 | 16 | 2 | 1 | 1 | 6 | 6 | 40036 | 15 | 5 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 311 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 52 | 25 | 160010 | 10 | 160068 | 10 | 160000 | 50 | 1280000 | 0 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10024 | 6 | 2 | 2 | 6 | 16 | 4 | 2 | 2 | 4 | 6 | 40036 | 30 | 10 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 311 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 2 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10024 | 6 | 2 | 2 | 9 | 16 | 4 | 2 | 2 | 4 | 6 | 40036 | 30 | 10 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 310 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 52 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 1 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10022 | 6 | 2 | 1 | 10 | 16 | 2 | 1 | 1 | 6 | 6 | 40036 | 15 | 8 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 311 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 2 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10022 | 3 | 2 | 2 | 4 | 16 | 2 | 1 | 1 | 6 | 9 | 40036 | 15 | 5 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 310 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 2 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10024 | 6 | 2 | 2 | 5 | 16 | 4 | 2 | 2 | 8 | 9 | 40036 | 30 | 10 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 311 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 0 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10022 | 3 | 1 | 1 | 9 | 16 | 2 | 1 | 1 | 8 | 5 | 40036 | 15 | 5 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 310 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 1 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10022 | 6 | 1 | 1 | 6 | 16 | 2 | 1 | 1 | 7 | 4 | 40036 | 15 | 10 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 310 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 1 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10022 | 3 | 1 | 1 | 5 | 16 | 2 | 1 | 1 | 5 | 6 | 40036 | 15 | 5 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |
160024 | 40039 | 310 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 46 | 25 | 160010 | 10 | 160000 | 10 | 160000 | 50 | 1280000 | 1 | 1 | 40020 | 40039 | 40039 | 19996 | 3 | 20019 | 160010 | 20 | 160000 | 20 | 320000 | 40039 | 40039 | 1 | 1 | 160021 | 10 | 9 | 10 | 10 | 160000 | 10 | 0 | 0 | 0 | 0 | 10024 | 3 | 1 | 1 | 9 | 16 | 2 | 1 | 1 | 9 | 8 | 40036 | 15 | 5 | 160000 | 10 | 40040 | 40040 | 40040 | 40040 | 40040 |