Apple M1 Microarchitecture Research by Dougall Johnson

Firestorm: Overview | Base Instructions | SIMD and FP Instructions
Icestorm:  Overview | Base Instructions | SIMD and FP Instructions

RADDHN2 (4S)

Test 1: uops

Code:

  raddhn2 v0.8h, v1.4s, v2.4s
  movi v0.16b, 1
  movi v1.16b, 2
  movi v2.16b, 3

(no loop instructions)

1000 unrolls and 1 iteration

Retires: 1.000

Issues: 1.000

Integer unit issues: 0.000

Load/store unit issues: 0.000

SIMD/FP unit issues: 1.000

retire (01)cycle (02)030b191e3f4e51inst issue (52)~issue fp/simd (54)~dispatch fp/simd (57)huge thing fp/simd (5b)696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op fp/simd (7e)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst neon or fp (9a)a8accfd5d6ddinst fetch restart (de)e0? fp/simd (ee)f5f6f7f8fd
1004303722000612548251000100010003983133018303730372415328951000100030003037303711100110000073116112630100030383038303830383038
10043037230003722548251000100010003983133018303730372415328951000100030003037303711100110000073116112630100030383038303830383038
100430372300216125482510001000100039831330183037303724153289510001000300030373037111001100010079116112630100030383038303830383038
1004303722000612548251000100010003983133018303730372415328951000100030003037303711100110000073116112630100030383038303830383038
1004303722000612548251000100010003983133018303730372415328951000100030003037303711100110000673116112630100030383038303830383038
1004303723000612548251000100010003983133018303730372415328951000100030003037303711100110000073116112630100030383038303830383038
1004303722000612548251000100010003983133018303730372415328951000100030003037303711100110000073116112630100030383038303830383038
1004303722000842548251000100010003983133018303730372415328951000100030003037303711100110000073116112630100030383038303830383038
1004303723000612548251000100010003983133018303730372415328951000100030003037303711100110000373116112630100030383038303830383038
1004303722000612548251000100010003983133018303730372415328951000100030003037303711100110001073116112630100030383038303830383038

Test 2: Latency 1->1

Code:

  raddhn2 v0.8h, v1.4s, v2.4s
  movi v0.16b, 1
  movi v1.16b, 2
  movi v2.16b, 3

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code): 3.0037

retire (01)cycle (02)03081e1f3a3f4e51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa6a8accfd0d5d6ddinst fetch restart (de)e0? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
102043003722400006129548251010010010000100100005004277313030018300373003728265328745101002001000020030000300373003711102011009910010010000100048071012162229634100001003003830038300383003830038
10204300372261000612954825101001001000010010000500427731313001830037300372826532874510100200100002003000030037300371110201100991001001000010000671012162229634100001003003830038300383003830038
102043003722503008229548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100044071012162229634100001003003830038300383003830038
102043003722400006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100041371012162229634100001003003830038300383003830038
102043003722500006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100040071012162229634100001003003830038300383003830038
102043003722400006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100039071012162229634100001003003830038300383003830038
102043003722500006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100034071012162229634100001003003830038300383003830038
102043003722400006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100044371212162229634100001003003830038300383003830038
102043003722500006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100045071212162229634100001003003830038300383003830038
102043003722500006129548251010010010000100100005004277313130018300373003728265328745101002001000020430000300373003711102011009910010010000100041071012162229634100001003003830038300383003830038

1000 unrolls and 10 iterations

Result (median cycles for code): 3.0037

retire (01)cycle (02)0318191e1f3f4e51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa1a8a9acc2cfd5d6ddinst fetch restart (de)e0? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
1002430037225000061295482510010101000010100005042773131300543003730084282873287671001020100002030000300373003711100221091010100001000030640316222963010000103003830038300383003830038
1002430037225000061295482510010101000010100005042773130300183003730037282873287671001020100002030000300373003711100211091010100001003030640216222963010000103008430038300383003830038
1002430037225000061295482510010101000010100005042786700300183003730037282873287671001020100002030000300373003711100211091010100001000000640216222963010000103003830038300383003830038
1002430037225100061295482510010101000010100005042773130300183003730037282873287671001020101722030000300373003711100211091010100001000000640216222963010000103003830038300383003830038
1002430037224000061295482510010101000010100005042773130300183003730037282873287671001020100002030000300373003711100211091010100001000000640216222963010000103003830038300383003830038
1002430037224000061295482510010101000010100005042773131300183003730037282873287671001020100002030540300373003711100211091010100001001028890640216322963010000103003830038300383003830038
1002430037225000061295482510010101000010100005042773130300183003730037282873287671001020100002030000300373003711100211091010100001000000640216222963010000103003830038300383003830038
1002430037225000061295482510010101000010100005042773130300183003730037282873287671001020100002030000300373003711100211091010100001000000640216222963010000103003830038300383003830038
10024300372250000105295482510010101000010100005042773130300183003730037282923287671015920103302030000300373003711100211091010100001000030682216222963010000103003830038300383003830038
1002430037225000061295482510010101000010100005042773130300183003730037282873287671001020100002030000300373003711100211091010100001000000640216222963010000103003830038300383003830038

Test 3: Latency 1->2

Code:

  raddhn2 v0.8h, v0.4s, v1.4s
  movi v0.16b, 1
  movi v1.16b, 2

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code): 3.0037

retire (01)cycle (02)03080b1e3f4e51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa0a8a9accfd5d6ddinst fetch restart (de)e0? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
10204300372250006129548251010010010000100100005004277313130018300373003728265328745101002001000020030000300373003711102011009910010010000100010187541161129634100001003003830038300383003830038
1020430037225000612954825101001071000010010000500427867003001830037300372826532874510100200100002003000030037300371110201100991001001000010000007102331129634100001003003830038300383003830038
1020430037224000612954825101001001000010010000500427731303001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003003830085300853003830038
1020430037225000612954825101001001000010010000500427731313001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003003830038300383003830038
1020430037225000612954825101001001000010010000500427731313001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003003830038300383003830038
1020430037224000612954825101001001000010010000500427731313001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003003830038300383003830038
1020430037224000612954825101001001000010010000500427731303001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003013430132300383003830038
1020430037226110612954825101001001000010010000500427731303001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003008530038300383003830038
10204300372250001472954825101001001000010010000500427731313001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003003830038300383003830038
10204300372250012612954825101001001000010010000500427731303001830037300372826532874510100200100002003000030037300371110201100991001001000010000007101161129634100001003003830038300383003830038

1000 unrolls and 10 iterations

Result (median cycles for code): 3.0037

retire (01)cycle (02)03080b18191e1f3f4e51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)72scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa1a7a8a9acc5cfd5d6ddinst fetch restart (de)e0? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
10024300372250000006129548251001010100001010000504277313030018300373003728287032876710010201000020300003003730037111002110910101000010000000640416222963010000103003830038300383003830038
10024300372250000006129548251001010100001010000504277313130018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
10024300372250000006129548251001010100001010000504277313030018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
10024300372240000308229548251001010100001010000504277313030018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
10024300372250000006129548251001010100001010000504277313030018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
10024300372250000006129548251001010100001010000504277313030018300373003728287032876710010201017820300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
100243003722500002106129548251001010100001010000504277313030018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
10024300372240000006129548251001010100001010000504277313130018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222963010000103003830038300383003830038
100243003722500000051229548251001010100001010000504277313130018300373003728287032876710010201000020300003003730037111002110910101000010000000640216222966810000103003830038300383003830038
10024300372250000008229548251001010100001010000504277313030018300833003728287032876710010201000020300003003730037111002110910101000010000000640316222963010000103003830038300383003830038

Test 4: Latency 1->3

Code:

  raddhn2 v0.8h, v1.4s, v0.4s
  movi v0.16b, 1
  movi v1.16b, 2

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code): 3.0037

retire (01)cycle (02)03080918191e3a3f4e51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa1a8a9acc2cfd5d6ddinst fetch restart (de)e0? int output thing (e9)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773131300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000471011611296340100001003003830038300383003830038
102043003722400120061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
102043003722500000061295482510100100100001001000050042773130300183003730037282653287451010020010000200300003003730037111020110099100100100001000000071011611296340100001003003830038300383003830038
1020430037225000000612954825101001001000010010000500427731303001830037300372826532874510100200100002003000030037300371110201100991001001000010000000710352222985024100001003032530323302783027630183

1000 unrolls and 10 iterations

Result (median cycles for code): 3.0037

retire (01)cycle (02)030b18191e1f3f4e51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa1a7a8a9accfd5d6ddinst fetch restart (de)e0? int output thing (e9)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
1002430037225000001452954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010005027896406163329630010000103003830038300383003830038
1002430037225000001512954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403161329630010000103003830038300383003830038
1002430037225000088612954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403163329630010000103003830038300383003830038
100243003722500000822954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403163329630010000103003830038300383003830038
1002430037225000005442954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403163329630010000103003830038300383003830038
100243003722500000842954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403163329630010000103003830038300383003830038
1002430037225000001662954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403163329630010000103003830038300383003830038
100243003722500000612954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037411002110910101000010000006403163329630010000103003830038300383003830038
1002430037225000003722954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010003036403163329630010000103003830038300383003830038
1002430037225000008722954825100101010000101000050427731303001830037300372828732876710010201000020300003003730037111002110910101000010000006403163329630010000103003830038300383003830038

Test 5: throughput

Count: 8

Code:

  movi v0.16b, 0
  raddhn2 v0.8h, v8.4s, v9.4s
  movi v1.16b, 0
  raddhn2 v1.8h, v8.4s, v9.4s
  movi v2.16b, 0
  raddhn2 v2.8h, v8.4s, v9.4s
  movi v3.16b, 0
  raddhn2 v3.8h, v8.4s, v9.4s
  movi v4.16b, 0
  raddhn2 v4.8h, v8.4s, v9.4s
  movi v5.16b, 0
  raddhn2 v5.8h, v8.4s, v9.4s
  movi v6.16b, 0
  raddhn2 v6.8h, v8.4s, v9.4s
  movi v7.16b, 0
  raddhn2 v7.8h, v8.4s, v9.4s
  movi v8.16b, 9
  movi v9.16b, 10

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code divided by count): 0.2508

retire (01)cycle (02)030b1e3f51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6escheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa0a6a8acc5cfd5d6ddinst fetch restart (de)e0? int output thing (e9)? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
1602042006515000392580100100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
1602042006415000396580334100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
16020420064150001862580100100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
16020420064150002292580100100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000006010111116112006101600001002006520065200652006520065
16020420064150001652580100100800001008000050064000002004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
16020420064150009962580100100800001008000050064000002004520064200643228010020080000200240000200642006411160201100991001001600001000010010111116112006101600001002006520065200652006520065
16020420064150005832580100100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
16020420132150001882580100100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
1602042006415000392580100100800001008000050064000002004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065
16020420064150002072580100100800001008000050064000012004520064200643228010020080000200240000200642006411160201100991001001600001000000010111116112006101600001002006520065200652006520065

1000 unrolls and 10 iterations

Result (median cycles for code divided by count): 0.2506

retire (01)cycle (02)0308181e3a3f51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)5f6061696d6escheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa8accfd0d2icache miss (d3)d5d6d9dadbddinst fetch restart (de)dfe0? int output thing (e9)eaec? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
16002420074150000151278001212800001280000626400001102003220051200513228001220800002024000020051200511116002110910101600001000100361411625411672200482201160000102005220052200522005220052
16002420060150000151278001212800001280000626400001152003220051200603228001220800002024000020051200511116002110910101600001000100351441534211532200482201160000102005220052200522005220052
1600242005115000015127800121280000128000062640000015200412006020060322800122080000202400002006020163111600211091010160000100105100381752534222532200482202160000102006120061200612006120052
1600242006015100015129800121280000128000062640000015200322006020060322800122080000202400002005120060111600211091010160000100102100351752725212772200572202160000102006120061200612006120061
1600242005115000015729800121280000128000062640000115200412006020051322800122080000202400002005120051111600211091010160000100156100351752734222842200482402160000102006120061200612006120061
160024200511510001437278001212800001280000626400001152004120060200603228001220800002024000020060200601116002110910101600001000100331752334211572200572402160000102006120061200612006120061
1600242006015000015729800121280000128000062640000115200322006020060322800122080000202400002006020060111600211091010160000101115100361451725422772200572402160000102006120052200612006120061
160024200511510012051298001212800001280000626400001152004120060200603228001220800002024000020060200511116002110910101600001019100331442725411772200482201160000102005220052200522005220052
16002420051150001215127800121280000128000062640000115200322006020051322800122080000202400002006020051111600211091010160000100126100321441434211842200482401160000102005220052200612006120061
16002420051150000078278001212800001280000626400001152003220051200603228001220800002024000020051200511116002110910101600001000100331452725212532200572401160000102005220061200612006120052

Test 6: throughput

Count: 16

Code:

  raddhn2 v0.8h, v16.4s, v17.4s
  raddhn2 v1.8h, v16.4s, v17.4s
  raddhn2 v2.8h, v16.4s, v17.4s
  raddhn2 v3.8h, v16.4s, v17.4s
  raddhn2 v4.8h, v16.4s, v17.4s
  raddhn2 v5.8h, v16.4s, v17.4s
  raddhn2 v6.8h, v16.4s, v17.4s
  raddhn2 v7.8h, v16.4s, v17.4s
  raddhn2 v8.8h, v16.4s, v17.4s
  raddhn2 v9.8h, v16.4s, v17.4s
  raddhn2 v10.8h, v16.4s, v17.4s
  raddhn2 v11.8h, v16.4s, v17.4s
  raddhn2 v12.8h, v16.4s, v17.4s
  raddhn2 v13.8h, v16.4s, v17.4s
  raddhn2 v14.8h, v16.4s, v17.4s
  raddhn2 v15.8h, v16.4s, v17.4s
  movi v16.16b, 17
  movi v17.16b, 18

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code divided by count): 0.2502

retire (01)cycle (02)03081e373f51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)60696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa8acc2cfd5d6ddinst fetch restart (de)e0? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
160204400833000017225251601001001600171001600005001280000140020400484003919973319998160100200160000200480000400394004811160201100991001001600001000001011011621400361600001004004040040400404004940040
160204400393000017326251601001001600171001600005002398999140020400404004819973319997160100200160000200480000400394004811160201100991001001600001000001011011611400451600001004004040040400504004040040
16020440039300000492251601001001601341001600005001280000040029400394003919973319997160100200160000200480000400484003911160201100991001001600001000001011011611400451600001004004040040400494004040049
16020440040300000854251601001001600171001600005001280000140029400484003919973320006160100200160000200480000400394003911160201100991001001600001000001011011611400361600001004004040040400504004940040
16020440039299000991251601171001600001001600005001280000140020400394004819973320006160100200160000200480000400484004811160201100991001001600001000001011011611400361600001004004040041400494004040049
16020440039300000341251601001001600171001600005002398999140030400394004819973319997160100200160000200480000400394003911160201100991001001600001000001011011611400371600001004005040049400494004040049
16020440039300000463251601001001600171001600005001280000040029400394003919973319997160100200160000200480000400484004811160201100991001001600001000001011011611400451600001004004040049400404004040040
160204400393000017488251601001001600011001600005002398999040020400394004019973319998160100200160000200480000400394003911160201100991001001600001000001011011611400361600001004004140040400494004940049
16020440039300000430251601001001600171001600005001280000140021400484004819973319997160100200160000200480000400484003911160201100991001001600001000001011011611400361600001004004940040400404004140040
16020440039300001382251601171001600171001600005001280000140020400394004819973319997160100200160000200480000400394004811160201100991001001600001000001011011611400361600001004005040049400404004040040

1000 unrolls and 10 iterations

Result (median cycles for code divided by count): 0.2502

retire (01)cycle (02)030a1e1f373f51inst issue (52)~issue int (53)~issue fp/simd (54)~dispatch int (56)~dispatch fp/simd (57)huge thing int (59)huge thing fp/simd (5b)5f6061696d6edispatch stall (70)scheduler rewind (75)scheduler stall (76)~dispatch op (78)~map op int (7c)~map op fp/simd (7e)~map lookup int (7f)~map lookup fp/simd (81)8283pipeline redirect (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst b.cc (94)inst integer (97)inst neon or fp (9a)9fa6a8accfd0d2icache miss (d3)d5d6d9dadbddinst fetch restart (de)e0eaeb? fp/simd (ee)gpr retires (ef)f5f6f7f8fd
1600244003929900017574251600101016000010160000501319998115400204003940040199963200281600102016000020480000400404003911160021109101016000010000100228116162116640040206160000104004040040400404004040040
160024400393000001755251600271016001710160000501280000115400204003940048199963200191600102016000020480000400404003911160021109101016000010000100228418162116440045206160000104004040040400494004040040
160024400483000000462516001010160017101600005012800001154002940040400391999632001916001020160000204800004003940039111600211091010160000100001002285181642199400402018160000104004040040400494004040040
16002440049300000176125160027101600171016000050131999701540020400394004819996320028160010201600002048000040048400391116002110910101600001000010024115251622298400404012160000104004040040400404004040049
1600244004829900015225160010101600001016000050128000001540020400484003919996320028160010201600002048000040039400481116002110910101600001000010024115241642268400374018160000104004940040400494004040049
16002440048299000175225160010101600011016000050239899901540020400394004819996320019160010201600002048000040039400391116002110910101600001000010024115251642295400374018160000104004040049400414004040049
1600244003930000017109251600101016001710160000502398999115400204003940048199963200191600102016000020480000400484003911160021109101016000010000100228415162116640036209160000104004040049400404004940049
1600244003930000017425160010101600011016000050128000011540020400394004819996320019160010201600002048000040039400391116002110910101600001000010024115261642298400374018160000104004940040400494004040049
16002440048300000072625160010101600001016000050239899901540020400484003919996320019160010201600002048000040039400481116002110910101600001000010024115261642246400364012160000104005040040400504004040041
1600244004030000005225160010101600001016000050131999901540021400394004819996320019160010201600002048000040049400391116002110910101600001001010024115281642288400374018160000104005040049400494004940049