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

LDP (pre-index, D)

Test 1: uops

Code:

  ldp d0, d1, [x6, #0x10]!
  mov x0, 1
  mov x1, 2
  mov x8, 0

(no loop instructions)

1000 unrolls and 1 iteration

Retires: 2.000

Issues: 2.000

Integer unit issues: 1.000

Load/store unit issues: 1.000

SIMD/FP unit issues: 0.000

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)09l2 tlb miss data (0b)0e0f1e2022292b3a3e3f404346494f51schedule 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 ldst uop (7d)map ldst uop inputs (80)8283flush restart other nonspec (84)85inst all (8c)inst simd load (98)inst ldst (9b)9dl1d tlb access (a0)l1d tlb miss (a1)l1d cache miss st (a2)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5b6bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3cfd5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaeb? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
200510407001000483710010102543000102520001000100010001000513564582511015104010406993773200020002000104010401110011000100001050803810406040071000270727711732162210371000414010001000100010411041104110411041
2004104081000002526100112102521010725200010001000100010005285245825110151040104069937732000200020001040104011100110001000010367029101400282271047270739710732162210771000252310001000100010411041104110411041
2004104071000004128100101025160031125200010001000100010005286045824110151040104069937732000200020001040104011100110001000010308019100961168610042307196160732162210371000363110001000100010411041104110411041
20041040810000026241002010251501162520001000100010001000528604582411015104010406993773200020002000104010401110011000100001047802010228039071024150727710732162210371000232310001000100010411041104110411041
20041040710010025381002010253801172520001000100010001000528644582411015104010406993773200020002000104010401110011000100001023702310230013081000390723710732162210371000343110001000100010411041104110411041
2004104081001002522100101025901152520001000100010001000528524582411015104010406993773200020002000104010401110011000100001023701610250017871024311615720732162210371000252110001000100010411041104110411041
20041040810030029161001010259012425200010001000100010005285245825110151040104069937732000200020001040104011100110001000010257025102400171871016270719710732162210371000252310001000100010411041104110411041
200410408120100261610220102514021725200010001000100010005286445824110151040104069937732000200020001040104011100110001000010528025103880213071020350719710732162210371000272310001000100010411041104110411041
20041040810000029240001010251001072520001000100010001000528564582511015104010406993773200020002000104010401110011000100011031802410231017871000260723700732162210371000433410001000100010411041104110411041
2004104081001002616100001025170001425200010001000100010005284845824110151040104069937732000200020001040104011100110001000110367142103220292271038150727710732162210371000383610001000100010411041104110411041

Test 2: Latency 1->3 roundtrip

Chain cycles: 3

Code:

  ldp d0, d1, [x6, #0x10]!
  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.1619

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)09l2 tlb miss data (0b)0e0f18191e1f202224293a3e3f4043494d51schedule 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)60696b6d6emap 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 st (a2)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3cfd5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
6021412137191040000000263102183101656226012194421750112102525704545027610081100004010010000100001073487459777246295330121481012158512163511339431138906010030200200001000060200200001000012166412152011502011009910040100100001000001001240924012056120043551142390246334123997539810032101831112118750212998773619100001000050100121370121583121318121614121410
602041216749102000000024010225310148811881214522217001211562570439502921010310000401001000010000108064246014364629657012180701217201216361137093114063601003020020160100006044420000100001217891214784150201100991004010010000100000100124232386206212010411113240823430412427117210010132331831112144050202774759781100001000050100121281121310121623121636121515
602041212299112020000024530223210136012921215462192201211862570448503341009710000401001000010000107614645943154626186012190501218281219471134632511408060543302002000010121611842000010049121911121582115020110099100401001000010000010012410239020671200141711024402323231241711419110032101831112127350180847550675100001000050100121694121711121793121774121657
6020412147090820000000262102234101448117612187621361012169625703585032410101100004010010000100001077008461034246290030121397012158812164611361724113709601003020020000100006020020000100001214981217261150201100991004010010000100000100124194431204212001371112241811232212437110110510032101831112138650208740724820100001000050100121528121614121284121629122008
60204121817912300300002451022341016401244121703219700120845257036750332100971000040100100001000010765854603905464064401216460121789121974113804311372260100302002000010000602002000010000121447121599115020110099100401001000010000010012432240520591201140110924252503261242194110810032101831212120350200907729866100001000050100121761121371121810121459121429
60204121541912220000002247022221014241312121473220601121446257042750318101051000040100100001000010769904602065462574401214510121504121678113523311382060100302002000010000602002000010000121803121382115020110099100401001000010000010012407238920441202941910924222523201242498111710032101831112135050230832805831100001000050100121680121560121689121462121619
60204121626911200200002664022111016561188121624222400121057257038550290101081000040100100001000010728774594345463074301216560121590121565113327311428060100302002000010000602002000010000121680121802115020110099100401001000010000010012405236820411199540411124162323131242711127210032101831112119450204760968654100001000050100121504121663121294121566121528
60204121577911220000002378022371013921268121738217801121132257044550340101101000040100100001000010752444615308462933901215860121743121783113817311412360100302002000010000602002000010000121425121504115020110099100401001000010000010012429238420461199341410723962463051241893111710032101831112152650176652952906100001000050100121503121554121487121546121778
60204121786911202000002396022741014721180121452221401121045257048750276101101000040100100001000010771524605666464442101216980121809121470113750311384360100302002000010000602002000010000121417121703115020110099100401001000010000010012435238420511201841211124122483161240991210310032101831112137450238658896625100001000050100121726121648121524121794121632
60204121517912200200002547022331014721312121464222410121510257042750338100961000040100100001000010774494607575462548501216700121763121418113718311406560100302002000010000602002000010000121865121649115020110099100401001000010000010012425239320321200441311024222841235412413104210910332101831112148450198671761913100001000050100121457121852121648121831121710

1000 unrolls and 10 iterations

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

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)09l2 tlb miss data (0b)0e0f18191e1f2022293a3e3f4043494d51schedule 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)60696b6d6emap 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 st (a2)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3cfd5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
6003412115190810000000236702301114560236121587221100121109257029550176101061000040010100001000010758634601611463463801207670121593121554113731311407160256300202000010000600202000010000120672121330115002110910400101000010000010124180378213612083384115240650642124023508500031402781112041250194653797240100001000050010120669121554121358121441121695
600241215189120000000023590224911456018012166622420012026925702685023210103100004001010000100001075728461012446257941121286312146412133111266131139246001030020200001000060020200001000012143012149811500211091040010100001000001012447037621231203439510924227054112391102011300031401781112114450190777799645100001000050010121348121314121404121638121417
6002412160590600000000241702243111840200121332227500120456257030450240100861000040010100001000010776634602362463210911218070121419121219113650311383860010300202000010000600202000010000121687121601115002110910400101000010000010124860368213012083386113240756570124167708200031401781112130450208694881643100001000050010121556121677121763121731121800
60024121341909000010002332022541136011001216842209001212792570316502261011510000400101000010000107454946154154625237112153201217501214101136273113945600103002020000100006002020000100001218521213751150021109104001010000100000101242603832061120034021102419232628124361000108036031401781112112650250987849734100001000050010121424121396121509121337121951
60024121329910100010002392022361124801401213642198001209092570277502161010110000400101000010000107607945952484630404112133901216321215421135913113965600103002020000100006002020000100001218151212041150021109104001010000100000101243603732116120203631132447242558124488809200031401781112129250182879761595100001000050010121788121341121647121382121285
600241213539101000100022080224311256014412147622550012115425703825018410096100004001010000100001076808459968946294880121584012171712171411334031139166001030164200001000060020200001000012170012079911500211091040010100001000001012416038121051211438411324422347471242210409800031401781112137350194303455181100001000050010121350121626121399121432121555
60024121342910000000002179022771141601081215082281011204112570274502081003710000400101000010000107589046004234635898012165901216131205661135493113767600103016820000100006002020000100001212471215471150022109104001010000100000101238403822054120753531112446168648124128708000131401781112040450174863757321100001000050010121586121410121497120608121484
600241213519060000000022150227211176023212134622400012107125702685021010107100004001010000100001076394460993746288360121647012132012147211366931138716001030020200001000060020200001000012151812137411500211091040010100001000001012415038421041201940011224105654612395106010000531401781112121150192748810752100001000050010121321121367121239121562120842
6002412132590300001000215002287112480132121511220600120808257018450174101191000040010100001000010731904611558463650511207230121696121366113243311363360010300202000010000600202000010000121768121464115002110910400101000010000010124260382211712054371110243864555124269209300031401781112116450208831708523100001000050010121748121697121533120813121628
600241215769110000100022970227411440012412140322340012132425703045019410091100004001010000100001075341461365846300950121506012171212160911335231140516001030020200001000060020200001000012068212182911500211091040010100001000001012435037620651201740511424202565581244291010200031401781112159550202774766680100001000050010121882121169121755121244121606

Test 3: Latency 2->3 roundtrip

Chain cycles: 3

Code:

  ldp d0, d1, [x6, #0x10]!
  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.1715

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)09l2 tlb miss data (0b)0e0f18191e1f202224293a3e3f404d51schedule 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)60696b6d6emap 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 st (a2)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3branch cond mispred nonspec (c5)branch mispred nonspec (cb)cfd5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
6021412147591110000000224302262101272121612155122531202632570457502921012910000401001000010000107299446018794633222012130101219331215731135223114171601003020020000100006020020000100001217691213431150201100991004010010000100000100124089397218112013413113240850031812473960440000032102832212065050244373406327100001000050100120894121518121570121381120938
6020412176191020010000230202251101216127212097322251211302570466503001010210000401001000010000107743846116854641086112197201220871216051136423114379601003020020000100006020020000100001217631210891150201100991004010010000100000100124302435920911203235611124302463301241812315700000321028322120797502061035367755100001000050100120824120763121699120908121652
6020412064791122000000215402321101256218412096123151206152570412503261012310000401001000010000107773546122034609103012185201209331215191138693113208601003020020000100006020020104100001210001217771150201100991004010010000100000100124968334205612010348112244446633312474550930000032102172212117350184348759348100001000050100121711121706121726121653121236
602041218059061100000021180222910120812201214872292121212257025650304100511000040100100001000010775194599245463146901208230121839121415113601311406360100302002000010000602002000010000121461121842115020110099100401001000010000010012438835821411202236911324912023331242411201050050032102832212150850102884878398100001000050100121418121510121705121605121415
6020412152191311000000233102255101400219212161422251212622570406503301009310000401001000010000107589246057424640941012177801215541216111135423113984601003020020000100006020020000100001217941210852150201100991004010010000100000100124508377210612133350111248212232212407960640000032102832212122850214757971531100001000050100121727121360121642121762121592
60204121945911200000002165022551012481192121584220612088125703765032410103100004010010000100001078160460755846381960121448012166812160211346231140136010030200200001000060200200001000012159412160211502011009910040100100001000001001241683652053120714071092429202312124061170960001032102832212167650274958835638100001000050100121443121752121519121598121722
6020412178191010000000233702272101256122812170421961208532570394503121011210000401001000010000107672046107774633421012172501216941214201137943113711601003020020000100006020020000100001213711216311150201100991004010010000100000100124128318204412081338110242830030912414980910000032102832212099850172932833839100001000050100121660121668121607121495121488
602041218489131010000022530226410141611041213632232121060257025050200101091000040100100001000010802754610093463982801216010121619121466113494311321160100302002000010000602002000010000121513120836115020110099100401001000010000010012429833020531184558211223798277608124031320168001003886330832123961505151056999988100001000050100125154124815124978124759121498
60204121755910210000262654052024219110141612721242142142122969886708585072710221100694489611153113341157622468032647253770124681012155512143911270431140136253735255235541004370988233921176412155812149571502011009910040100100001000001001240083472061120553601162394642324312436141011500300374433266412204750216847761776100001000050100121719121488121851121717121742
602041219399493000000024090227510132031241214452208121387257041250332101121000040100100001000010768554616759462846701219210121512121645113757311424860100302002000010000602002000010000121673121746115020110099100401001000010000010012404173332063120374141152422264315124071110891200032102832212124550250722776656100001000050100121849121641121691121913121646

1000 unrolls and 10 iterations

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

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)09l2 tlb miss data (0b)0f1e202224293a3e3f404d51schedule 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 st (a2)l1d cache miss ld (a3)ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3branch cond mispred nonspec (c5)cfd0d2d5map dispatch bubble (d6)ddfetch restart (de)e0? int output thing (e9)eaebec? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
600341215829091000125342243101408125212126222331210922570337501921009210000400101000010000107472946048244628334121420012152512157711363331139806001030020200001000060020200001000012133512148411500211091040010100001000001012409135020871208740111524372643311242787110710003140833784312132450150632710704100001000050010121246121513121401121287121400
6002412144391211000263422191014161132121490221112108325702775020410108100004001010000100391075827460374846307941213860121475121262113346311402360010300202000010000600202000010000121348121265115002110910400101000010000010124311375204712019387114244454334124168517810003140503782412103750220692824800100001000050010121508121593121509121244121587
600241212849081110023612249101208135612173522101210042570307502041009410000400101000010000107500845928984642705121315012142112134511340631137986001030020200001000060020200001000012151212148511500211091040010100001000001012398138820721211626916224185234312436115110112003140802784312122350186924697491100001000050010121379121447121402121348121541
600241215549101000025802243101368113612134522411212822570286501981010110000400101000010000107456745974684638931121312012143012139511325531136756001030020200001000060020200001000012109412139011500211091040010100001000001012429138321001202340211323883083401244891112410103140505784212118150190772865738100001000050010121403121029121471121339121234
60024121412912101102677229510143211081207292205120929257031950208100511000040010100001000010785004609926461012212141701214921215551133383113957600103002020000100006002020000100001214421211051150021109104001010000100000101243713862047120314101162450236349124248417110003140504784212086250206562754633100001000050010121647121561121318121358121266
600241214139111100026042239201248123612135821941212632570283502601011610000400101000010000107119245986584628963121370012144312127911354731137426001030020200001000060020200001000012165612122711500211091040010100001000001012414132821101201839711224076432512428111181122003140504784412113350212647657753100001000050010121555121820121557121702120594
60024121533912110102589222810129612361215422228120799257031050230100861000040010100001000010744954586694462943512127601213701215251134363113963600103002020000100006002020000100001207021215241150021109104001010000100000101243423802095120194001172443563371243794110110503140502785212126350208833760431100001000050010121628121208121336121242121206
60024121439909100102507226310148812161217782256121064257027150218101021000040010100001000010764754596421462522712160431213431214981133193114232600103002020000100006002020000100001214861215951150021109104001010000100000101243413852045120724131142424184322124348518610003140505785212133850186746676646100001000050010121522121287121365121592121338
6002412115890911010234822351011441256121365225912109825702505024210084100004001010000100001074081460399246278141212990121526121688113367311401160010300202000010000600202000010000121782121252115002110910400101000010000010124212345210412068399111242090340124129817910003140504785512108850224685682532100001000050010121310121363121550121429121448
6002412116190911010255722551013521921212412246121286257031650224101141000040161100001000010764934602509463150212145701212151212281133763113935600103002020000100006002020000100001216721214661150021109104001010000100000101241213782082120114031122425196325124208317610003140806782512119150194730693711100001000050010121339121459121421121586121495

Test 4: throughput

Count: 8

Code:

  ldp d0, d1, [x6, #0x10]!
  ldp d0, d1, [x7, #0x10]!
  ldp d0, d1, [x8, #0x10]!
  ldp d0, d1, [x9, #0x10]!
  ldp d0, d1, [x10, #0x10]!
  ldp d0, d1, [x11, #0x10]!
  ldp d0, d1, [x12, #0x10]!
  ldp d0, d1, [x13, #0x10]!
  mov x7, x6
  mov x8, x6
  mov x9, x6
  mov x10, x6
  mov x11, x6
  mov x12, x6
  mov x13, x6

(fused SUBS/B.cc loop)

100 unrolls and 100 iterations

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

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk instruction (07)mmu table walk data (08)l2 tlb miss data (0b)0e0f1e1f2022293a3e3f404346494f51schedule 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)6067696d6emap 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)92inst 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 st (a2)l1d cache miss ld (a3)a5ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5b6bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3branch cond mispred nonspec (c5)branch mispred nonspec (cb)cdcfd5map dispatch bubble (d6)ddfetch restart (de)e0e7? int output thing (e9)eaebec? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
160214301452250000009367022291136067176301952185123734588179425160230802248000080120800144011091332868112030148300262998810025799421601322001600482001600483026030090118020110099141001008000080000110082487272229321608207023711102404790237084602489121232827641934111511701600299563180145120320728000080000801003007130158301123017730188
160204301822250000009456022261144046168301452190132648811186125160233802468000080120800154010681335332112629997301923024110118610060160133200160048200160040300583016011802011009914100100800008000001008241102220305708247223601082392736313884508618116222829941834111511701600300521980136381262818000080000801003010630040301073020430210
1602043007422600000097290224911352622763015921821406365871867251602168024580000801208001240099913333441138301203009029748972579976160141200160040200160048301453013211802011009911100100800008000001008244719226328140811602344109240073628598458167812022153140034111511801600299962480133324370828000080000801003018629699301133019630191
160204301882251010009910022311164046280300732216116596721179225160223802368000080124800164010671340191112830203302963017410038610091160132200160040200160048300893020911802011009918100100800008000001008239602274309208236423231092425750274884792630110211324290341115118016003019521801252942921138000080000801003019930256300613016330209
160204301462270000009637022511164061180300252189123477646170225160235802448000080120800154010691326892110230027301913001610100710122160133200160048200160000300263016811802011009914100100800008000001008241519225428130821432336108242775230218469565011121282668034000511011711301643080108256179868000080000801003018330221299073001730170
160204301092250000009806022311151258204297912191765915551663251601998021980000801008000040101313262771893017330015300631015831020216010020016000020016000030039302361180201100993100100800008000001008241119222829320821922341107243273826288460968295238426001934000511011611301101980130395318758000080000801002974129990302643014029985
160204300992251010009856022111135261236300922196131596527174625160204801998000080100800004009711333932196302313019230106100173101631601002001600002001600003017130088118020110099121001008000080000010082402023002565082333232010424167922854846166769620703009034000511011611301493180079318279758000080000801003014930293302082977530262
16020429976225000000932202203116726317230249217012065560618752516018880196800008010080000401026132832011323010330076302689975310241160100200160000200160000301483021111802011009971001008000080000010082421192269305508250923641072431752257584772619100201627241934000511011611300561880111332308748000080000801003015530170301863008430048
160204301102251010009941022281164859180299612207169486516188525160204802058000080100800004010391335293112730044302193012095953101061601002001600002001600003025030148118020110099151001008000080000010082453272204252808228523541072424516298584750611108220025621934000511011611301211280093385274948000080000801003019330111301093014130127
160204299782260000009443022261148061136301452176155514650169825160217802008000080100800004010251325323111030070301203010010091398121601002001600002001600003010930160118020110099151001008000080000010082453272221277408186823611072406770328685020573127176726201934000511011611301521880114386330688000080000801002999530120302263015630096

1000 unrolls and 10 iterations

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

retire uop (01)cycle (02)03l1d tlb fill (05)mmu table walk data (08)l2 tlb miss data (0b)0e0f1e2022293a3e3f404346494f51schedule 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)5f6067696d6emap stall dispatch (70)simd prf full (72)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)92inst 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 st (a2)l1d cache miss ld (a3)a5ld unit uop (a6)st unit uop (a7)l1d cache writeback (a8)a9abacafb5b6bbl1d cache miss ld nonspec (bf)l1d tlb miss nonspec (c1)c2c3branch cond mispred nonspec (c5)cfl1i cache miss demand (d3)d5map dispatch bubble (d6)d9dadbddfetch restart (de)e0e7? int output thing (e9)eaebec? ldst retires (ed)? simd retires (ee)? int retires (ef)f5f6f7f8fd
1600342978722610000987922451123273224301602230944706851867251601208015280000800108000040055813356650110730311299922999410102031011416001020160000201600003011629902118002110911101080000800001108244419228628110823242310112241973427998426170310622102768193405020013160031210301142680104404276738000080000800103016430189302673017529895
1600243005522520000975622491145676212301322184101646580197525160114801228000080010800004005281336662011102991830214299911004103102971600102016000020160000302323001611800211092410108000080000010824171923082615082490235310524207442753848686001101994213419640502009160031110302091980137388346768000080000800103029130226300722997630087
160024300632251110085402252114647118429679221012726330718532516013580135800008001080000400502132948801107299923015630191990903100291600102016000020160000301132992911800211092010108000080000010824301922202833081928234911024057463119845236194923682712193405020091600399300522180126376258418000080000800103003329948302032969430241
1600242993022510100979722541144877280300872225106735550198225160142801258000080010800004005181328744011023000929697300941007303100221600102016000020160000301443020311800211091510108000080000010824281922992555081884234810724297523122846046321042414231019340502008160031212302192080112364319358000080000800103010630182299913000629653
1600243015222611000996622271140054256299752246128481509176025160129801208000080010800004004901332083111133002630013302171000103102061600102016000020160000302222986311800211091410108000080000010824181922752864082293232110824787342224843235811069652727194405020011160039113016127801073603221088000080000800103012830156300132975330177
160024300822231100099252243116086225630138220711971562618452516013780128800008001080000400672134105011972976030261301949806031005916001020160000201600003011130028118002110961010800008000001082439192286241008227323141092393752274484413677872060273419340502007160031010299501780115279327978000080000800103007430151302193008430166
16002429990224111009579224811424581802994221791136696041869251601148013080000800108000040046213305610111130347301533001999070310162160010201600002016000029742299291180021109910108000080000010824641923002330081802233210724031044287084585481931953229019404050200816003109298192380100388266988000080000800102996230020301953005930260
1600243007122510100983122601138464268302642209994806431741251601308011980000800108000040052113366210190302003002730077100640310039160010201600002016000030035301971180021109211010800008000001082424192320234908244223451032409754271084474646972483245319540502008160031110301912080122281329948000080000800103007730058301473006130157
16002430012226110009460224211416561843004522141105576101536251601328014580000800108000040050813333610185299743030930127999603100701600102016000020160000302133001311800211096101080000800000108243119223631180823792323104241875228088467164011922842644190405020071600311103009818801333303071178000080000800103012529966302533016230029
16002429935222111008922227311400532123006622051334935941693251601228013180000800108000040049913269840011730133301553019799560310190160010201600002016000030081298501180021109151010800008000001082428192315321608266323471082414790278984445482119204830031934050200916003119303162280112395339958000080000800103007230234298463012830215