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

LD1 (multiple, post-index, 2 regs, 8H)

Test 1: uops

Code:

  ld1 { v0.8h, v1.8h }, [x6], x8
  nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop ; nop
  mov x0, 1
  mov x1, 2
  mov x8, 0

(no loop instructions)

1000 unrolls and 1 iteration

Retires (minus 60 nops): 2.000

Issues: 3.000

Integer unit issues: 1.000

Load/store unit issues: 2.000

SIMD/FP unit issues: 0.000

retire uop (01)cycle (02)03l1i tlb fill (04)l1d tlb fill (05)mmu table walk instruction (07)mmu table walk data (08)09l2 tlb miss instruction (0a)l2 tlb miss data (0b)1e223a3f43464951schedule uop (52)schedule int uop (53)schedule ldst uop (55)dispatch int uop (56)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)5f696d6emap rewind (75)map stall (76)dispatch uop (78)map ldst uop (7d)map ldst uop inputs (80)8283flush restart other nonspec (84)85inst all (8c)inst simd load (98)inst ldst (9b)l1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)l1d cache writeback (a8)a9acafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2cfd0d2l1i cache miss demand (d3)l1i tlb miss demand (d4)d5map dispatch bubble (d6)d9dadbddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? int retires (ef)f5f6f7f8fd
620052851321310001218050522797400023213300010002000100020005000100002216011279132826031030002000300028274283481161001100010002003262002004200624021135009891712932930411952632423810164743279581000145091240913947200010002844128414282822842728261
6200428342212001112110050692821302223281300010002000100020005000100002016041280072839931030002000300028212281751161001100010002000362002014200644621137139922708234012371941832183813115143279801000148001214413046200010002844028309284272838228377
6200428170212012112180492328223020233553000100020001000200050001000013160292803528426310300020003000281982828911610011000100020000620020022002446011349110145715633560381976032093809144441279621000148551226013454200010002832628480283612849528330
62004282912120110020290507428229002232383000100020001000200050001000018160362814828462310300020003000282622818211610011000100020000620040122002426001395310202713233651421972033403816124740278961000147651235913509200010002830628420284672839728280
6200428316213012001180505828023222233003000100020001000200050001000018160412798928482310300020003000283082817711610011000100020000420020022002224001384210034717033780411982232903805104245279711000146171246713383200010002838328333282952830528287
620042840621300300208049642813322223281300010002000100020005000100001816045280552832231030002000300028355283191161001100010002003242004004200044021137229736713533070411983032763813134339279711000148171230413458200010002812328276283052818128379
6200428385212002001080501328050020232023000100020001000200050001000013160422809128313310300020003000283462840611610011000100020033620040042002220211364010010714733091441951233063812134244281731000146891245013186200010002838128451283822838628398
620042839121300011308048182800502023331300010002000100020005000100021316052280512836331030002000300028169282761161001100010002002062002012200222400136531001571613317036195583421381683946279791000149221248013490200010002849628443282762840128167
6200428407211001103080506228259022232373000100020001000200050001000013160522809228411310300020003000280962825111610011000100020003620020122002248211349410032718333130491976232743810114550278561000145851234213254200010002843928378282782835728522
62004283952140010040805121282560222339730001000200010002000500010000816031280452834331030002000300028270282721161001100010002002362004004200244620134759860714133601381971432803815113944279921000145521225813297200010002824528111283762831928209

Test 2: Latency 1->3 roundtrip

Chain cycles: 3

Code:

  ld1 { v0.8h, v1.8h }, [x6], x8
  fmov x0, d0
  eor x8, x8, x0
  eor x8, x8, x0
  add x6, x6, x8
  mov x0, 1
  mov x1, 2
  mov x8, 0

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0057

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)09l2 tlb miss data (0b)0e0f18191e1f2223243a3f4d4f51schedule uop (52)schedule int uop (53)schedule simd uop (54)schedule ldst uop (55)dispatch int uop (56)dispatch simd uop (57)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)ldst uops in schedulers (5b)696d6emap stall dispatch (70)map rewind (75)map stall (76)dispatch uop (78)map int uop (7c)map ldst uop (7d)map simd uop (7e)map int uop inputs (7f)map ldst uop inputs (80)map simd uop inputs (81)8283flush restart other nonspec (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst branch cond (94)inst int alu (97)inst simd load (98)inst ldst (9b)9d9fl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)l1d cache writeback (a8)a9acafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2cfd5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? int retires (ef)f5f6f7f8fd
60205120058899001011002301000120043987631097372580103501021000120000401001000020000138504595733436346551012002712005112005511213931126017010030200200001000060200300001000012005112003511502011009910040100100001000001002000002200000002000000200321011611119820500029652000050100120049120048120048120048120048
6020412004793100000000200101120036989051097412580103501021000120000401001000020000138504595732666346551012002712004712004711213531125057010030200200001000060200300001000012004712004711502011009910040100100001000001002000002200002002000020200321011611119824500020692000050100120153120052120052120052120052
60204120051964000011002000001200369890510974025801035010210001200004010010000200001385045957361743465510120027120053120051112139311255070100302922000010000602003000010000120051120047115020110099100401001000010000010020000022000000020000202003210116111199035000210052000050100120052120052120052120052120052
60204120145931001000002001011200369876310974025801035010210001200044010010000200001385069157334363465625120029120051120035112125311257170100302002000010000602003000010000120052120051115020110099100401001000010000010020000022000000020000202003210116111198085000212602000050100120048120052120052120052120036
6020412005193100000000134000001200329876310973925801035010210001200004010010000200001384999557332443465510120011120035120035112135311250770100302002000010000602003000010031120051120051115020110099100401001000010000010020000022000010020000202003210116111198245000210652000050100120052120052120052120052120052
60204120051930000001002001001200329876310973625801035010210001200004010010030200001384999557332443465510120023120047120047112135311253670304302002000010000602003000010000120051120047115020110099100401001000010000010020000022000000020000202003210116111198245000210602000050100120052120048120052120049120146
6020412005193000001000148801011201259876410978225801035010210001200004010010000200001385045957334363465510120011120054120051112139311250570100302002000010000602003000010030120051120051115020110099100401001000010000010020000002000000020000202003210116111198205000210052000050100120052120052120052120052120048
60204120047931010000002000011200369890510974025801035010210001200004010010000200001384858357326663466892120011120051120051112139311258670100302982000010000602003000010000120051120047115020110099100401001000010000010020000022000000020000002003210117111198205000061092000050100120049120048120048120039120052
602041200519300000000020010112003698763109740258010350115100012000040100100002000013850459573343634655101200271200351200351121393112554701003020020000100006020030000100001200481201381150201100991004010010000100000100200000220000003200002020032101161111982450000101192000050100120142120052120049120052120036
60204120051930001000102001011200369875910974025801005010210001200004010010000200501385045957334363465539120105120051120051112123311257470100302002000010000602003000010000120047120047115020110099100401001000010000010020000022000030020000202003210116111198245000210692000050100120052120052120052120052120148

1000 unrolls and 10 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0055

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk instruction (07)mmu table walk data (08)l2 tlb miss data (0b)0e0f18191e1f2223243a3f4d4f51schedule uop (52)schedule int uop (53)schedule simd uop (54)schedule ldst uop (55)dispatch int uop (56)dispatch simd uop (57)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)ldst uops in schedulers (5b)60696d6emap stall dispatch (70)map rewind (75)map stall (76)dispatch uop (78)map int uop (7c)map ldst uop (7d)map simd uop (7e)map int uop inputs (7f)map ldst uop inputs (80)map simd uop inputs (81)8283flush restart other nonspec (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst branch cond (94)inst int alu (97)inst simd load (98)inst ldst (9b)9d9fl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9acafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2cfd0d5map dispatch bubble (d6)d9daddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? int retires (ef)f5f6f7f8fd
60025120048931000000002000011201099648010974025800315001210001200004001010030200001384890057332443465234012002812005212005111215831125327001030111200001000060020300001000012005712005311500211091040010100001000011020002222000301152000022220314003240022119832500026692000050010120042120059120149120060120054
60024120128965100001005000001201229654210981848800305001210006200044012910030200501385515357363843467119012018112013912014011216216112534702093011620062100326020630093100321201371200512150021109104001010000100000102000612200040028925200062000031820241002512001050024141002000050010120222120335120237120280120418
600241203239320010100000000012004196484109744258001350012100002000240010100002000013849475573343634653501120031120102120097112162311253470010300202000010000600203000010000120055120055115002110910400101000010000010200000220000000020000202003140031700331198305000214012000050010120056120056120103120082120036
60024120035931000000002000011200409648410974425800135001210001200004001010000200001384925157336283465350012003112005612003511216631125347001030020200001000060218300001000012010012005411500211091040010100001000001020000022000001002000000202314003170020119810500021010162000050010120056120056120056120056120056
600241200559310000110020000112002096512109744258001350010100012000040010100002000013848787573362834653500120011120055120055112166311253470221300202000010000600203000010000120055120055115002110910400101000010000010200000220000000198200002020031400217003311982650002100132000050010120057120056120056120056120056
60024120055931000000002000011200409648410974425800135001210001200004001010000200001384691157336283467734112003112005512006111216631125347001030020200001000060020300001000012005512003511500211091040010100001000001020000022000000032000020200314003170023119830500001410132000050010120059120056120036120052120057
6002412005593100000000200011120020964841097442580013500121000120000400101000020000138497005733772346535001200111200551200351121663112514700103002020000100006002030000100001200551200551150021109104001010000100000102000002200000100200002020031400317002211983150002141492000050010120056120056120056120056120052
600241200559300000000026000011200409648410974425800135001210001200004001010000200001384936757336283465379012003112005512005111216631125347001030020200001000060020300001000012005512005511500211091040010100001000001020000022000000002000020200314003170033119831500021410132000050010120056120056120036120057120057
600241200559310000000020000112004096484109746258001350012100012000040010100002000013849251573362834648800120027120035120055112166311253470010300202000010000600203000010000120055120051115002110910400101000010000010200020220000000020000202003140031700221198105000000132000050010120056120036120056120056120056
60024120051931000000002000001200409648010972425800135001210000200004001010000200001384925157336283464880012003412005512005511216631125347001030020200001000060020300001000012005512005511500211091040010100001000011020000022000001002000000202314003170022119909500001414132000050010120036120056120056120056120056

Test 3: Latency 2->3 roundtrip

Chain cycles: 3

Code:

  ld1 { v0.8h, v1.8h }, [x6], x8
  fmov x1, d1
  eor x8, x8, x1
  eor x8, x8, x1
  add x6, x6, x8
  mov x0, 1
  mov x1, 2
  mov x8, 0

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0051

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)l2 tlb miss data (0b)0e0f18191e1f22243a3f4d4f51schedule uop (52)schedule int uop (53)schedule simd uop (54)schedule ldst uop (55)dispatch int uop (56)dispatch simd uop (57)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)ldst uops in schedulers (5b)60696d6emap stall dispatch (70)map rewind (75)map stall (76)dispatch uop (78)map int uop (7c)map ldst uop (7d)map simd uop (7e)map int uop inputs (7f)map ldst uop inputs (80)map simd uop inputs (81)8283flush restart other nonspec (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst branch cond (94)inst int alu (97)inst simd load (98)inst ldst (9b)9d9fl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)l1d cache writeback (a8)a9acafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3cecfd5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? int retires (ef)f5f6f7f8fd
60205120057930000010020300001200419876310972425801005010210001200004010010000200001385092357326663465626012001112005612003511214331125097010030200200001000060200300001000012005912005111502011009910040100100001000001002000002200001002000022220003210116111198145000400132000050100120046120042120045120062120042
60204120061930101000055301001200269876910974625801065010410002200004010010000200001385115557329563465420012003312004112005711214531125157010030200200001000060200300001000012005712005311502011009910040100100001000001002000332200031052000022220003210116111198305000413602000050100120058120055120054120058120054
6020412005793100000003150001120036989051097422580103501021000120000401001000020000138504595733436346551001200301200511200511121393112511701003020020000100006020030000100001200511200511150201100991004010010000100000100200000020000000200002020000321011611119824500008692000050100120036120052120036120053120052
6020412003593000000009200001232569890510972425801035010210001200004010010000200001385057157334363465597012002712005112005211216131125097010030200200641000060200300001000012005112008711502011009910040100100001000001002000002200001032000020200003210116111198205000201052000050100120052120052120052120049120052
602041200519310000000380001120020987631097602580100501001000020000401001003020000138499955733436346515601200271200511200511121393112509701003020020000100006020030000100001200511200511150201100991004010010000100000100200000020000120200002000000321011611119824500020092000050100120052120052120036120052120053
6020412004793000000005600101200369860210973625801005010210000200004010010000200001384999557334363465510012002712005312013711212331125097010030200200001003060200300001000012003512003511502011009910040100100001000011002000002200000032000020200003210116111198255000201092000050100120052120052120052120052120057
60204120140930000000068000012003698763109740258010350100100032000040100100002000013849995573343634655100120023120035120035112123311250970100302002000010000602003000010000120052120051215020110099100401001000010000010020000002000000020000202000032103316111198865000210092000050100120052120052120053120054120052
60204120051930000000068000112003698904109740258010350102100012000040100100002000013850459573343634655390120027120135120047112139311250970100302002006410000602003000010000120035120047115020110099100401001000010000010020000022000010020000202000032101162111982450002111002000050100120036120052120036120052120054
60204120051930000000042000112003698763109724258011850102100012000040100100002000013850459573343634651560120027120051120052112139311251070100302002000010000602003000010000120051120140115020110099100401001000010000010020000022000010020000200000032101161111982450002101092000050100120054120052120052120036120052
602041200519310000100560000120036987631097242580100501021000120000402231000020000138504595733484346553901200271200511200511121243112571701003020020000100006020030000100001200511200471150201100991004010010000100001100200000020000000200002020000321011611119808500020092000050100120052120052120054120052120052

1000 unrolls and 10 iterations

Result (median cycles for code, minus 3 chain cycles): 9.0051

retire uop (01)cycle (02)03mmu table walk instruction (07)mmu table walk data (08)09l2 tlb miss data (0b)0e0f18191e1f23243a3f4d4f51schedule uop (52)schedule int uop (53)schedule simd uop (54)schedule ldst uop (55)dispatch int uop (56)dispatch simd uop (57)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)ldst uops in schedulers (5b)696b6d6emap stall dispatch (70)map rewind (75)map stall (76)dispatch uop (78)map int uop (7c)map ldst uop (7d)map simd uop (7e)map int uop inputs (7f)map ldst uop inputs (80)map simd uop inputs (81)8283flush restart other nonspec (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst branch cond (94)inst int alu (97)inst simd load (98)inst ldst (9b)9d9fl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)l1d cache writeback (a8)a9acafb5l1d cache miss ld nonspec (bf)c2cdcfd5map dispatch bubble (d6)dbddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? int retires (ef)f5f6f7f8fd
60025120047930001030021618800012008896419109829258004950012100072000040253100002010213848323573900034668431202420120139120331112268151126557040930301201261006260578301891006312012312031831500211091040010100001000001020004022000600462520002200032043391321199035003310602000050010120242120229120237120231120124
60024120224932201111001400001200369647710974025800135001210001200004001010000200001384878757334363465350120027012005112005311216331125307001030020200001000060020300001000012005112004711500211091040010100001000001020000022000000020000220031403171231198265000010692000050010120052120052120052120052120052
60024120051931000000002000112003696480109740258001350012100012000040010100002000013849123573343634652341200110120051120051112146311253070010300202000010000600203000010000120051120047115002110910400101000010000010200000220000103200000200314021712311981050000101492000050010120052120036120036120052120036
60024120035931000000002000112003696484109740258001350012100012000040010100002000013848787573343634652341200270120051120051112162311253070010300202000010000600203000010000120054120035115002110910400101000010000010200000220000000200022200314021704411981050002101352000050010120036120052120051120052120055
6002412005193100000000000011200209648010985725800135001210001200004001010000200001384878757334363464880120027012005112005111214631125317001030020200001000060020300001000012005112004711500211091040010100001000011020000022000000320000000031402170321198105000211692000050010120048120052120052120036120036
60024120051931000000002000112003696480109740258001350010100012000040010100002000013848787573343634648801200270120051120227112332311253070010300202000010000600203000010000120035120035115002110910400101000010000010200000020000000200002200314031713311982650002101092000050010120052120052120036120052120052
6002412005193000000000140010120021965121097402580013500121000120000400101000020000138483235733436346523412002701200511200351121623112530700103002020000100006002030000100001200511200351150021109104001010000100000102000002200000002000002003140217023119826500020602000050010120036120052120036120036120052
60024120047931000000001400011200329648010972425800135001010001200004001010000200001384832357326663464880120027012004712005111214631125307001030020200001003360020300001000012003512003511500211091040010100001000001020000022000000020000220031403170341198265000010692000050010120053120036120052120052120052
6002412003593000001000200011200369651210972425800135001210001200004001010000200001384832357332443465318120027012004712003511216231125307001030020200001000060020300001000012005112005111500211091040010100001000001020000022000010020000220031402170331198265000210692000050010120048120052120052120036120052
60024120051931000000002000012003696476109740258001350012100012000040010100002000013848323573343634653501200270120051120051112162311253270010300202000010000600203000010000120051120059115002110910400101000010000010200080220014024508200022000316131870431216175002410692000050010120231120218120313120235120229

Test 4: throughput

Count: 8

Code:

  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  ld1 { v0.8h, v1.8h }, [x6], x8
  mov x7, x6
  mov x8, x6
  mov x9, x6
  mov x10, x6
  mov x11, x6
  mov x12, x6
  mov x13, x6
  mov x8, 0

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

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

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk instruction (07)mmu table walk data (08)09l2 tlb miss instruction (0a)l2 tlb miss data (0b)0e0f18191e1f22243a3c3f4346494f51schedule uop (52)schedule int uop (53)schedule ldst uop (55)dispatch int uop (56)dispatch simd uop (57)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)6061696d6emap stall dispatch (70)map rewind (75)map stall (76)dispatch uop (78)map int uop (7c)map ldst uop (7d)map int uop inputs (7f)map ldst uop inputs (80)8283flush restart other nonspec (84)85inst all (8c)inst branch (8d)inst branch taken (90)inst branch cond (94)inst int alu (97)inst simd load (98)inst ldst (9b)9d9fl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9acafb5b6bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2cfd0d5map dispatch bubble (d6)ddfetch restart (de)e0e7? int output thing (e9)eaeb? ldst retires (ed)? int retires (ef)f5f6f7f8fd
160205800406420000000000410001080025212121125240100801001600008010001600002026711367935200800278004080040599533599982401002001600002002400008004080040118020110099100100800008000001001600000351600320003216003261243500511002163280037080000106160000801008004180042800418004180042
1602048004064200000000003700000800250012825240100801001600008010001600002026711367267000800168004080040599533599982401002001600002002400008004080041118020110099100100800008000001001600000271600000000160031612429005110031633800370800001010160000801008004180041800418004180041
16020480040642000000000040000008002521212112524010080100160000801000160000202671136726700080015800408004059953359998240100200160000200240000800408004011802011009910010080000800000100160000035160032010241600006123000511003162280037180063100160000801008004180041800418004180041
160204800406430000000010000010800252121211252401008010016000080100016000020365983652002008002280040800405995412599982401002001600002002400008004080040118020110099100100800008000001001600000271600320103160000602335005110031644800371800001010160000801008004180042800418004180041
1602048004064300000000005100000800252121219252401008010016000080100016000020067133646096008001580040800415995335999824010020016000020024000080040800401180201100991001008000080000010016000002716003102001600316129350051100316338003718000066160000801008004180041800428004180041
16020480040643000000100049000108002501212112524010080100160000801000160000203076436803850080015800408004059953359998240100200160000200240000800408004011802011009910010080000800000100160000027160032000016002361323500511003163380037180000106160000801008004180041800418004180041
16020480040643000000000038001108002521212112524010080100160000801000160000204025036726700080015800408027959953359998240100200160000200240000800408004011802011009910010080000800000100160000027160032000321600326131350051260316238003718000000160000801008004180041800418004180041
160204801556430000000000370000080025212121525240100801001600008010001600002040097367267000800158004080040599533599982401002001600002002400008004080040118020110099100100800008000001001600000351600330003116003261323500511003163380037080000106160000801008004180041800418004180041
16020480040643000000010044000108002511212025240100801001600008010001601661983561367598800800158004080158599531159998240100200160000200240000800408004011802011009910010080000800000100160000027160148000331600326123350051100325338003718000006160000801008004180041800418015880041
16020480040643001000000053000108002521212155024010080163160000801000160000200680036793250080414800408004059953359999240100200160000200240252800408004011802011009910010080000800000100160000027160000000341600326123270051100316338003718000006160000801008004280041800418004180041

1000 unrolls and 10 iterations

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

retire uop (01)cycle (02)03mmu table walk instruction (07)mmu table walk data (08)l2 tlb miss instruction (0a)l2 tlb miss data (0b)0e0f18191e1f233a3f4346494f51schedule uop (52)schedule int uop (53)schedule ldst uop (55)dispatch int uop (56)dispatch ldst uop (58)int uops in schedulers (59)simd uops in schedulers (5a)60696d6emap stall dispatch (70)map rewind (75)map stall (76)dispatch uop (78)map int uop (7c)map ldst uop (7d)map int uop inputs (7f)map ldst uop inputs (80)8283flush restart other nonspec (84)85inst all (8c)inst branch (8d)inst branch taken (90)91inst branch cond (94)inst int alu (97)inst simd load (98)inst ldst (9b)9d9fl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss ld (a3)ld unit uop (a6)l1d cache writeback (a8)a9acafb5b6bbl1d cache miss ld nonspec (bf)branch cond mispred nonspec (c5)cfd0d5map dispatch bubble (d6)ddfetch restart (de)e0e7? int output thing (e9)eaeb? ldst retires (ed)? int retires (ef)f5f6f7f8fd
160025800426200000000067598018002521627235124001080010160000800101600002032689366603518037080414804116029636002024001020160000202400008004080040118002110901010800008000001016000005016004662047160031614600502003716133580037080000106160000800108004180041800418004180042
16002480040610000010003700180025121726112524001080010160000800101600002020546365964208001580040800405997536002024001020160000202400008004180041118002110901010800008000011016000002716004600321600126123400502003516363580037080000106160000800108004180041800418004280041
160024800405990000000052001800251212271625240010800101600008001016000019926223672629080015800418004059975360020240010201600002024000080041801201180021109010108000080000010160000053160031004916003661324005020037162638800370800001010160000800108004380043800418004180043
16002480040621000000005600180027137172025240010800101600008001016000020314253662759080017800428004059978360023240010201600002024000080042800421180021109010108000080000010160000053160050003116005061504305020037161537800420800001010160000800108004180041800438004180043
160024800426200000000014900180025137182025240010800101600008001016000020123853662815080017800428004259976360020240010201600002024000080042800421180021109010108000080000010160000053160050105316005060494305020193316373580037180000100160000800108004180041800428004180041
1600248004062000001100370018002612160162524001080010160000800101600002016803366273608001580040800405997536002024001020160000202400008004080040118002110901010800008000001016000005016001200501600466046400502003616361880037180000106160000800108004180041800428004180041
16002480040621000000003800180025121226162524001080010160000800101600002032486367267008001580041800405997636002124001020160000202400008004080041118002110901010800008000001016000005016004600171600240126400502001316351980038080000106160000800108004180041800418004280041
16002480040621000000003800180025121227162524001080010160000800101600001993070367262908001680040800415997536002124001020160000202400008004080040118002110901010800008000001016000000160047004716004760124005020048169351780039080000610160000800108004180041800418004180041
16002480040621000011001690018002521226202524001080010160000800101600002017779367932308001580041800405997538600202400102016000020240000800408004011800211090101080000800000101600000501600461046160046604740050200351633218003708000066160000800108004180041800418004180041
1600248004062100000000380018002612122611252400108001016000080094160000201256936674510800168004180160599763600202400102016000020240000800408004011800211090101080000800000101600000351600320031160046614640050200321632198004118000006160000800108004180041800418004180041