Προηγμένα Θέματα Αρχιτεκτονικής Υπολογιστών Ακ. έτος 2011-2012, 8ο εξάμηνο, Σχολή ΗΜΜΥ 1η ΕΡΓΑΣΙΑ
Ονοματεπώνυμο:Κουτκιάς Ευάγγελος Αρ. Μητρώου:03108071 Εξάμηνο:8ο
ΠΕΡΙΕΧΟΜΕΝΑ
➢ Ζητούμενα άσκησης ➢ Μετρήσεις προσομοίωσης(μετά απο κάθε ζητούμενο) ➢ Ενδεικτικά Scripts
4. Πειραματική Αξιολόγηση
Για τον υπολογισμό των μετρικών χρησιμοποιήθηκαν οι εξής τύποι: ipc=Inst/Inst + L1_Accesses * L1_Time + L2_Accesses * L2_Time + Mem_Accesses * Mem_Time dcmissrate=dc_write_miss+dc_read_miss/dc_total_transactions icmissrate=ic_if_miss/ic_total_transactions
● 4.1 Μελέτη επίδρασης παραμέτρων ιεραρχίας μνήμης στην απόδοση της εφαρμογής
➢ 4.1.1 L1 cache
Με δεδομένo τo line size αλλάζαμε το line number και το associativity για να επιτύχουμε τη ζητούμενη ιεραρχία μνήμης:
size (dc/ic) 16K 16K 32K 32K 64K
associativity (dc/ic) 2 4 4 8 4
64K 8 Με τις προσομοιώσης και με τους τύπους που προαναφέρθηκαν υπολογίσαμε τα ipc για κάθε ζητούμενη ιεραρχία μνήμης και κάναμε τη γραφική(οι μετρήσεις μετά από κάθε ζητούμενο):
IPC
# art 1 0.045074 2 0.044773 3 0.044509 4 0.044460
gzip 0.135081 0.135202 0.135994 0.136015
mcf 0.074851 0.075072 0.075395 0.075420
equake 0.121923 0.122304 0.122627 0.122643
5
0.044464
0.137202
0.076103
0.122800
6 0.044464 0.137208 0.076056 0.122820 Για να γίνει όμως πιο κατανοητό το τι σημαίνουν αυτές οι μεταβολές παραθέτουμε τη βελτιωση % σε σχέση με την πρώτη ιεραρχία μνήμης:
IPC improvement%
Ακολουθεί η γραφικη για το
dc_miss_rate
Και οι αντίστοιχες μετρήσεις:
# 1 2 3 4 5 6 art 0.250169 0.251383 0.213636 0.213695 0.212731 0.212659 gzip mcf equake 0.066665 0.186052 0.035207 0.066547 0.183907 0.032961 0.057635 0.174644 0.031160 0.057119 0.173539 0.031146 0.047042 0.158395 0.029751 0.046935 0.159030 0.029571
Στη συνέχεια η γραφική για τo
ic_miss_rate
Kαι οι αντίστοιχες μετρήσεις: # 1 2 3 4 5 6 art gzip mcf equake 0.000074 0.000105 0.000215 0.000161 0.000011 0.000038 0.000016 0.000100 0.000003 0.000006 0.000004 0.000006 0.000002 0.000005 0.000003 0.000005 0.000000 0.000001 0.000001 0.000002 0.000000 0.000001 0.000001 0.000002
Συμπεράσματα:Παρατηρούμε ότι το IPC όσο αυξάνεται το μέγεθος της μνήμης αυξάνεται αισθητά.Επιπλέον παρατηρούμε μια μικρότερη αύξηση στο ipc όσον αφορά την αύξηση του associativity σε ίδιο μέγεθος μνήμης.Έτσι όπως είναι και το προφανές έχουμε καλύτερη απόδοση σε μνήμες με μεγαλύτερη L1 αφού όπως περιμέναμε(κ βλέπουμε από τις γραφικές) πέφτει το missrate, λόγω αυξημένου μεγέθους της cache,κάτι που γίνεται ιδιαίτερα αισθητό στην Icache και λιγότερο στην Dcache.
➔ ΠΙΝΑΚΑΣ 2ος L1 CACHE size (dc/ic) associativity (dc/ic)
16K 32K 32K 64K 64K
4 4 8 4 8
➢ Πρώτα για line
size=32
IPC
Μετρήσεις:
# 1 2 3 4 5 art gzip 0.050706 0.134837 0.050717 0.135656 0.050717 0.135675 0.050725 0.136923 0.050725 0.136945 mcf equake 0.073073 0.118205 0.073669 0.118552 0.073548 0.118567 0.075032 0.118749 0.075365 0.118773
Στη συνέχεια όπως πριν το
IPC improvement%
data_miss_rate
Μετρήσεις:
# 1 2 3 4 5 art gzip 0.270049 0.068542 0.252723 0.058708 0.252839 0.058140 0.251399 0.047593 0.251281 0.047300 mcf equake 0.227232 0.056273 0.211205 0.053413 0.212872 0.053435 0.181419 0.051772 0.174828 0.051433
INSTRUCTION_MISS_RATE
Μετρήσεις:
# 1 2 3 4 5 art 0.000016 0.000003 0.000002 0.000000 0.000000 gzip mcf equake 0.000057 0.000018 0.000125 0.000007 0.000005 0.000008 0.000005 0.000004 0.000007 0.000002 0.000001 0.000003 0.000001 0.000001 0.000002
Αυτό όμως που θα μας δείξει τι συμβαίνει είναι η σύγκριση με το block που χρησιμοποιήθηκε πριν,το block size 64
Συγκριση 32 με 64 block
Συμπεράσματα:To block size που χρησιμοποιήσαμε πριν(64) έχει ελαφρώς καλύτερη απόδοση απο το 32 block size.
➢ Για line size=128
IPC
# art gzip mcf equake 1 0.045838 0.135325 2 0.045699 0.136163 3 0.045650 0.136180 4 0.045478 0.137365 5 0.045478 0.137375
0.076101 0.076533 0.076588 0.076883 0.076844
0.124428 0.124789 0.124809 0.124950 0.124971
IPC IMPROVEMENT
DATA_MISS_RATE
# art gzip mcf equake 1 0.187771 0.065360 2 0.149719 0.057194 3 0.186843 0.056864 4 0.148815 0.046946 5 0.148757 0.046712
0.161209 0.152315 0.150637 0.142880 0.143153
0.021466 0.019719 0.019662 0.018419 0.018232
IC_MISS_RATE
# art gzip mcf equake 1 0.187771 0.065360 2 0.149719 0.057194 3 0.186843 0.056864 4 0.148815 0.046946 5 0.148757 0.046712 1 0.000086 0.000136 2 0.000003 0.000006 3 0.000003 0.000005 4 0.000001 0.000001 5 0.000000 0.000001
0.161209 0.021466 0.152315 0.019719 0.150637 0.019662 0.142880 0.018419 0.143153 0.018232# art gzip 0.000110 0.000176 0.000004 0.000006 0.000003 0.000005 0.000001 0.000002 0.000001 0.000002
mcf
equake
Συγκριση με 64 Block size
Συμπεράσματα:Εδώ παρατηρούμε γενική βελτίωση στην απόδοση, μέχρι και της τάξης του
1.35(για το equake) και καταλήγούμε στο ότι το καταλληλότερο απο τα 3 block size είναι το 128.Πράγμα που σημαίνει ότι τα προγράμματα παρουσιάζουν μια ανάγκη για τοπικότητα αφού το μεγαλύτερο block βγήκε και το πιο αποδοτικό γεγονός που υποδεικνύει ανάγκη για πολλές προσπελάσεις στο ίδιο block.
➢ 4.1.2 L2 cache IPC_IMPR
256X4 512X4 512X8 1024X8 1024X16 2048X8 2048X8
art 1 1.1 1.16 1.25 1.25 2.5 3.9
gzip 1 1.5 1.52 1.55 1.6 1.65
mcf 1 1.25 1.3 1.75 1.75 3.8
equake 1 2.12 2.14 2.3 2.22 2.34 2.35
1.66 4.3
L2_MISS_RATE
256X4 512X4 512X8 1024X8 1024X16 2048X8 2048X8
46 44 45 38 38 15 7
2.5 1 1.1 1.1 1.4 1.2 1.1
25 18 17 11 11 2.5 2
15 5.5 5.6 5.4 5.3 5.1 5
● 2oς πίνακας L2 για block size 64 και 256
➢ block size 64 IPC rel 128 block size
➢ Block size 356 IPC rel 128 block size
512X8 1024X8 2048X8
1.32 1 1.30 1 0.67 1
1.1 1.21 1.01
1.33 1.35 1.31
Συμπεράσματα:Παρατηρούμε ότι ενώ γενικότερα τα benchmarks είχαν καλύτερη απόδοση με το μεγαλύτερο block(256),ο art από κάποιο size και μέτα άρχισε να χάνει αισθητά στην απόδοση του και να κερδίζει πολύ περισσότερο με το block size 64, πράγμα που δείχνει ότι το μεγάλο block δεν τον εξυπηρετουσε, πιθανώς λόγω του ότι τα δεδομένα του βρίσκονταν σε διάσπαρτα μπλοκ και έτσι τα μεγάλα μπλοκ τον οδηγούσαν συχνα σε misses καθώς έπρεπε να φέρνει συνεχώs νέα blocks στην l2cache.
● 4.2 Μελέτη μεταβολής μετρικών απόδοσης στο χρόνο
Τρέξαμε τα 4 benchmarks για 5000000000 εντολές με συγκεκριμένη cache hierarchy, παρατηρώντας ξεχωριστά τa κάθε 100 εκατομμύριa, για να παρατηρήσουμε τη δυναμικη απόδοση των benchmarks και το κατά πόσο τα αποτελέσματα ανταποκρίνονται σε αυτά που είχαμε βρει πιο πριν για την αντίστοιχη μνήμη.Θα παραθέσω πρώτα τις γραφικές και τα συμπεράσματα και στη συνέχεια τις μετρησεις.(γιατί είναι 50 γραμμές η κάθε μέτρηση)
GZIP
INSTRUCTIONS-PER-CYCLE
Συμπεράσματα:Τα αποτελέσματα που είχαμε πάρει για την ίδια ιεραρχία μνήμης
ηταν γυρω από το 0.012.Στη γραφική μας υπάρχει κάποια διακύμανση κυρίως μεταξύ 0.15 και 0.13,όμως κάποιες φάσεις στο 0.1 ρίχνουν το μέσο όρο στο 0.12.Άρα δυναμικά δεν είναι απολύτως σώστη η εικόνα που είχαμε πριν λόγω του 0.1.
DC_MISS_RATE
IC_MISS_RATE
ΑRΤ
INSTRUCTIONS-PER-CYCLE
Συμπεράσματα:Παρατηρούμε ότι τα αποτελέσματα που είχαμε πάρει για την ίδια ιεραρχία μνήμης ανταποκρίνεται στις 1billion εντολές καθώς και αυτά ηταν γυρω από το 0.045.Υπάρχει βέβαια μια μικρή διακύμανση αλλα αμελητέας ποσόττητας.Επόμενως μπορούμε να πούμε ότι αντιπροσωπεύουν τη δυναμική συμπεριφορά στις 50 φάσεις.
DC_MISS_RATE
IC_MISS_RATE
EQUAKE
INSTRUCTIONS-PER-CYCLE
Συμπεράσματα:Παρατηρούμε ότι τα αποτελέσματα που είχαμε πάρει για την ίδια ιεραρχία μνήμης ανταποκρίνεται στις 1billion εντολές καθώς και αυτά ηταν γυρω από το 0.012.Έντονη διαφοροποίηση υπάρχει μόνο στις 3 πρώτες φάσεις.Επόμενως μπορούμε να πούμε ότι αντιπροσωπεύουν τη δυναμική συμπεριφορά στις 50 φάσεις(αν εξαιρέσουμε τις 3 πρώτες).
DC_MISS_RATE
IC_MISS_RATE
MCF
INSTRUCTIONS-PER-CYCLE
Συμπεράσματα:Παρατηρούμε ότι τα αποτελέσματα που είχαμε πάρει για την ίδια ιεραρχία μνήμης ηταν γυρω από το 0.012. είχαμε Εδώ όμως παρατηρούμε μεγάλες διακυμάνσεις από το 0.14 μέχρι το 0.04.Επόμενως το 0.07 που είχαμε πάρει ήταν μεν ο μέσος όρρος αλλα δεν δείχνει αυτή την έντονη διακύμανση που υπάρχει.
DC_MISS_RATE
IC_MISS_RATE
GZIP Μετρήσεις: dc.tr l2.t ic.tr l2rm l2wm l2ifm dcwm dcfm icfm 51951580 23558624 99997589 4283 131269 130 2074934 1622932 15848 52199060 23580541 99997586 3901 114736 48 1958032 1622060 15873 52093058 23494798 99997587 3912 127036 44 1939392 1592287 16074 47520977 18938552 99997600 8395 127970 230 1736418 989746 16699 51753155 23180207 99997600 4685 131240 274 2035767 1522497 15733 51965103 23545619 99997602 4397 123319 344 2061250 1605478 16960 52115828 23508427 99997587 3970 122952 92 1950692 1582026 15982 52096309 23496413 99997585 3904 122942 43 1970178 1593049 15976 47700595 19403875 99997602 8362 109991 145 1764723 1131804 15880 51376048 22690045 99997587 4888 127234 235 1988689 1445200 15585 51893421 23502460 99997588 4178 131114 49 2078508 1591944 15610 52138902 23513952 99997585 3906 127017 49 1979168 1568121 15768 52143992 23533530 99997585 3900 118823 43 1959734 1612924 15976 48541538 20063803 99997597 7504 119555 97 1778373 1206720 15923
50771354 22094069 99997592 5451 123178 226 1966211 1341549 15601 51913782 23491639 99997586 4164 127019 56 2023138 1587418 15442 52198073 23561608 99997587 3922 122926 51 1966935 1573292 15837 54886430 24172956 99998856 28968 917253 12822 2387028 1249198 370900 53907802 23871528 99998132 24260 592703 9222 2292125 1352185 247781 47383330 18880239 99997632 9256 112299 563 1722745 1037175 18378 51787628 23279560 99997588 4501 131421 240 2036659 1532344 15549 52136759 23612837 99997601 4201 131136 85 2114417 1605186 15753 52150646 23523818 99997587 3918 122939 44 1943171 1587301 16000 52098589 23492547 99997630 4057 122956 97 1967224 1593471 16058 47705983 19372407 99997652 8548 116432 529 1746371 1107234 18509 51285013 22623223 99997616 5537 125350 625 1993800 1423895 20160 51905138 23506626 99997585 4250 131162 92 2048633 1592211 15491 52203384 23567019 99997584 3904 120719 49 1982788 1590631 15908 52139607 23546475 99997584 3911 121065 47 1957630 1617907 15979 48611606 20126864 99997593 7257 127532 116 1789338 1185888 15865 50685006 22031854 99997590 5716 119055 246 1992168 1370427 15679 51921887 23524057 99997584 4176 131113 56 2081035 1602067 15465 52194736 23558344 99997584 3941 118826 52 1956343 1576877 15840 52140215 23548709 99997583 3920 122966 52 1955320 1624096 15977 49101941 20620602 99997593 6919 126588 49 1835215 1245526 15960 49878561 21427882 99997591 6179 114991 232 1926880 1331753 15383 51950259 23571571 99997585 4189 135224 86 2114239 1621432 15618 52151442 23508511 99997583 3918 122920 60 1957038 1548253 15978 52160714 23550215 99997584 3910 118824 34 1947011 1627386 15942 49688929 21123617 99997590 6373 131216 54 1846769 1309984 15920 49452339 20958453 99997594 6509 111616 235 1903214 1234909 15495 52081092 23574336 99997584 4223 127064 85 2026255 1599320 15500 51823588 23353934 99997585 4198 122940 65 1988394 1537916 15790 52389173 23664984 99997582 3643 122924 49 1933286 1628285 16077 50373473 21802232 99997589 5863 138605 43 1869078 1381153 16037 48679700 20240420 99997595 7272 98680 252 1862353 1187105 15611 51892406 23499846 99997585 4253 131133 100 2071463 1592546 15468 52209604 23578061 99997583 3938 122936 76 1998449 1575285 15845 52085077 23495895 99997584 3911 127017 49 1955021 1606554 15988 50934362 22345308 99997586 5144 134514 50 1916277 1473754 16083
ΑRΤ METΡΗΣΕΙΣ: dc.tr l2.tr ic.tr l2rm l2wm l2ifm dcwm dcifm icfm 38804145 14131381 99997571 4083607 1079827 2430 1643763 7407866 7620 41835308 15767230 99997570 5210727 949887 2652 2436723 8672858 7241 39512549 14492731 99997572 4360079 1068082 2553 1895977 7732439 7527 41318007 15468407 99997570 5008318 999223 2628 2317453 8436899 7302 39929710 14756477 99997572 4511311 995322 2570 2002239 7897494 7543 40615605 15118058 99997569 4735835 1014281 2566 2163513 8159388 7313 40618409 15083185 99997572 4776117 1016979 2591 2022383 8195705 7389 40077865 14798454 99997570 4551400 1065610 2526 2009229 7916682 7409
41095676 15333191 99997571 4958589 942814 2644 2194128 8392039 7381 39208780 14394501 99997570 4212609 1065810 2413 1850485 7553761 7451 41649196 15627870 99997572 5161923 968724 2691 2292869 8618528 7303 38951156 14218992 99997570 4124645 1067696 2372 1781716 7458992 7480 41994598 15805832 99997572 5298511 943980 2722 2355993 8762901 7347 38518879 14029000 99997570 3945573 1064634 2399 1834345 7265143 7509 42305959 15988765 99997572 5418075 933175 2766 2473780 8906427 7284 38254635 13812685 99997569 3905185 1127713 2330 1668532 7210595 7543 42641281 16193665 99997570 5495165 929916 2773 2576869 8997920 7247 38814067 14166337 99997570 4099110 1094375 2412 1764332 7440412 7479 41797996 15761612 99997572 5185817 943913 2717 2429761 8660514 7312 39476983 14443115 99997570 4365983 1075778 2455 1742792 7706119 7434 41013037 15326944 99997571 4899645 1000164 2657 2244211 8324742 7423 40305569 14926145 99997570 4671610 999436 2551 1975661 8078504 7372 40450602 15054691 99997572 4673298 1026490 2567 2198295 8065691 7450 40502978 15013154 99997571 4757966 1005713 2541 2022147 8150928 7322 39762507 14651071 99997572 4431606 1053018 2465 1961386 7794417 7501 41312770 15467026 99997568 5045903 952342 2590 2221294 8500612 7209 39281984 14448657 99997572 4241539 1079638 2517 1948213 7592909 7544 41719906 15667940 99997570 5191167 978447 2645 2343981 8655312 7239 38736815 14087986 99997572 4053526 1139990 2463 1630938 7360533 7628 42093442 15893589 99997570 5337418 935166 2689 2429569 8833921 7186 38067377 13773818 99997571 3786791 1122121 2354 1607507 7068764 7632 42760586 16246377 99997570 5588862 907748 2820 2571815 9107797 7244 38349671 13860818 99997572 3938930 1020945 2427 1535615 7246636 7629 42226190 15981503 99997570 5353005 924521 2696 2518035 8837540 7186 39166687 14292265 99997572 4250857 1064245 2468 1740334 7584459 7527 41433613 15546371 99997569 5061767 1022444 2652 2322161 8498258 7242 39748657 14655538 99997573 4455592 1039191 2591 1854060 7820467 7561 40967350 15304474 99997570 4883591 1011341 2578 2212626 8308630 7309 40265879 14911521 99997572 4661774 1012199 2600 1973534 8065845 7446 40090952 14817221 99997570 4562749 1027604 2509 2048308 7932374 7374 40861530 15260880 99997571 4870399 964888 2648 2192274 8293993 7437 39722752 14636563 99997570 4417354 1078436 2470 1887849 7788413 7377 41246996 15433483 99997572 5023422 889147 2655 2204642 8473858 7349 38956036 14210363 99997572 4138212 1060609 2504 1725725 7455818 7595 41977873 15839209 99997572 5294126 925665 2764 2398778 8788422 7338 38435156 13990266 99997569 3934249 1084018 2358 1680324 7241898 7503 42304726 15994798 99997572 5426950 894862 2758 2472063 8914578 7234 38053241 13689286 99997570 3832931 1155407 2339 1541141 7108233 7552 42633399 16216539 99997572 5518713 836276 2799 2601484 9027393 7270 38719080 14090309 99997571 4080815 1045324 2409 1715003 7385992 7509
MCF METΡΗΣΕΙΣ:
48704195 18731348 99999992 1414950 436376 3657 2301734 6564720 20871 49501879 19289522 99999892 1553843 438708 3695 2336093 6730379 21025 50473318 19846321 99999881 1644248 425774 3659 2338444 6919144 21387
51062097 20216616 99999785 1758238 403012 3984 2363042 7020915 22794 51587588 20715744 99999609 1817664 373152 3673 2325689 7204390 21503 51677011 20738318 99999753 1933590 400579 3712 2391862 7231513 21292 52073387 21023339 99999660 1983036 380970 3760 2377950 7410021 21385 52300157 21011752 99999439 2059173 408868 3840 2413593 7361299 21435 52203685 20939188 99999358 2077634 416859 3911 2419257 7370706 21558 51849737 20842844 99999352 2079927 405792 3806 2430274 7502195 21250 51919449 20819657 99999450 2080625 427390 3838 2456123 7391314 21350 51697266 20709367 99999474 2091138 434903 3888 2465903 7497490 21202 53946233 22034399 100000427 1444332 934217 23458 2460770 5217147 312423 54253389 22183785 99999136 1575889 1334896 32423 2958669 5655406 314071 51259115 20478510 99999594 2087419 462638 4482 2455583 7637537 23743 51303966 20366871 100000131 2043602 453399 3885 2414122 7626044 21301 51243946 20406368 100000073 2054409 452476 3966 2406478 7695826 21369 51337367 20380171 99999957 1993159 427226 3791 2365986 7731421 21299 50965029 20251911 100000232 2084483 438738 4051 2399505 7814175 21273 50733891 20168126 100000266 2148215 447409 4461 2396447 7827383 23581 50336582 20053422 100000298 2268575 468232 4665 2385880 7908076 25589 50048139 20000920 100000299 2336111 479320 4163 2385694 7987181 20739 49641110 20008481 100000241 2486344 506936 4396 2356687 8142352 20673 48382630 18517925 99999147 2318181 373311 3696 1627474 10331361 18985 52748541 23773635 99997575 602378 4648972 1533 4870027 8131025 70492 51185218 22422417 99997570 310209 555 757 114793 2859484 11425 51672615 21924133 99997572 414592 798 886 124617 4697776 11440 51912567 21587483 99997570 448720 914 861 130804 6032220 11365 52247607 21258177 99997570 716737 1325 1108 135507 7788002 11475 52660933 20605104 99997569 1136434 2904 1383 142333 9125343 11372 51760946 21092964 99998527 2220018 420680 2999 1496362 8813538 16488 47285728 16371775 99998660 1951754 246945 2873 992197 11485634 17280 45836080 13826208 99997582 1515872 10950 1485 144393 13261844 11443 53064877 24290114 99997571 346428 4842263 1164 5036247 8601276 70864 50917370 22420029 99997570 205679 353 624 88627 1409340 11431 51257230 21974014 99997570 188649 451 574 99019 3072036 11365 51889261 21192400 99997572 171601 659 625 111712 6009900 11478 53102046 19735653 99997571 282462 2727 972 135478 11375102 11409 53677762 21443696 99998834 2061344 414460 3741 1592828 11156147 16569 50753100 20369742 100000151 2407983 486507 3879 2384615 7607925 21066 50236170 20037761 100000172 2454036 475398 3960 2334762 7789941 21196 50030005 20079749 100000211 2501960 474321 4066 2346040 7858271 20872 50016525 20179006 100000264 2549744 485416 4111 2313725 8012527 20957 50011225 20209541 100000262 2530455 472015 4092 2271665 8172055 20842 49462584 19309109 99999862 2420491 414607 3932 1899837 9325896 20455 49072667 18551642 99999471 2300799 352073 3416 1571451 10348606 19023 47759723 15506394 99997711 1665948 29629 1615 219425 14423572 12456 47695257 15272641 99997577 1599687 941 1332 117302 14755283 11567 47695339 15269607 99997577 1599621 927 1366 117441 14752292 11694 48498766 18082244 99997572 1023160 1599017 1284 1751658 13233071 30751
EQUAKE METΡΗΣΕΙΣ: dc.tr l2.tr ic.tr l2rm l2w l2ifm dcwm dcifm icfm 43814058 12303719 99997570 59235 400 478 309637 642011 25368 50445457 13334777 99997576 253117 66161 927 349794 972890 22049 67658471 16272310 99997571 759808 219637 1465 551387 1976155 12600 67457996 16355751 99997572 753905 197829 1400 508102 1947504 12633 67762582 16179613 99997583 772778 221010 2235 553108 2007255 14494 67557700 16310282 99997572 751629 219674 1435 552261 1954364 12690 67534335 16335501 99997571 759708 197745 1349 507671 1965053 12484 67819593 16217481 99997574 772496 219815 1670 551202 2005610 13467 67430969 16284773 99997570 745934 219668 1386 544579 1937747 12579 67628983 16294049 99997572 767732 197737 1373 493614 1977841 12516 67727642 16240932 99997570 765216 219646 1323 532886 1981449 12387 67476656 16310743 99997574 749381 217078 1670 513490 1939998 13535 67674811 16243712 99997569 771518 200484 1369 528753 1998326 12352 67628716 16283256 99997572 757482 219610 1402 550588 1969023 12578 67456851 16362334 99997573 754081 197987 1661 508209 1949188 13513 67792376 16160347 99997572 775030 219674 1414 551443 2012642 12372 67536047 16318679 99997570 748793 219647 1388 551835 1948642 12535 67554600 16329115 99997574 762319 197922 1657 508414 1971298 13508 67797974 16223987 99997570 769929 219694 1365 551950 1999631 12367 67420700 16288417 99997573 745999 219628 1464 551184 1938202 12660 67654844 16288313 99997573 769736 197876 1681 506627 1991026 13506 67691633 16258133 99997572 762859 219700 1413 543062 1978662 12546 67473774 16323933 99997567 751476 201916 1332 496855 1940287 12443 67711630 16206301 99997575 772294 215693 1713 528533 1994937 13426 67596089 16290974 99997570 754493 219673 1381 540555 1958402 12523 67496010 16350382 99997572 757001 197890 1426 505079 1956796 12627 67850936 16201751 99997573 774467 219845 1690 550897 2011162 13303 67659416 16108927 99997571 782086 219718 1415 552021 2026915 11469 67760237 15649638 99997570 835147 241650 1354 598728 2160565 8550 67810054 15719334 99997575 845312 219865 1673 555541 2174600 9723 68114416 15614945 99997570 853599 241664 1324 598762 2207079 8709 67760503 15651088 99997573 836200 241654 1359 598839 2162879 8591 67724977 15715737 99997574 840505 219958 1648 554639 2162606 9629 68036723 15586454 99997571 852515 241847 1383 596376 2202718 8829 67876952 15669839 99997570 839453 241773 1342 587717 2168252 8560 67800734 15668697 99997575 839055 237812 1644 554522 2155728 9528 67933485 15644528 99997570 851133 223997 1349 560695 2188600 8680 67941321 15658484 99997575 844445 241899 1665 590228 2181481 9638 67761122 15649713 99997569 835063 241707 1372 596539 2156779 8596 67909272 15693749 99997572 850756 219816 1370 554259 2191675 8698 68021682 15641846 99997573 848459 241880 1653 598920 2192948 9662 67755541 15651653 99997572 835162 241729 1437 598984 2160816 8706 67839917 15710358 99997570 846472 219790 1307 555319 2178238 8572
68092954 15624842 99997574 852760 241964 1671 599066 2203208 9757 67755175 15648321 99997570 835573 241652 1332 598712 2162960 8541 67779530 15721280 99997572 843031 219874 1376 554474 2167217 8673 68034144 15585783 99997573 852198 241909 1613 595243 2203173 9646 67871800 15670970 99997572 839728 241811 1378 585903 2166180 8642 67812367 15663942 99997569 838916 238248 1350 553345 2157290 8548 67926674 15649654 99997575 851523 223527 1691 562423 2189316 9770
• SCRIPTS 4.1
Για την άσκηση αυτή χρησιμοποιήσα το script που υποδεικνύει το παράρτημα Γ ώστε να φτάνω πιο γρήγορα στο 1ο magic breakpoint του κάθε benchmark και να μην εκτελούμε το βήμα 2 της εκφώνησης που απαιτεί κάποιο χρόνο.Ένα script που χρησιμοποιήθηκε για το gzip benchmark π.χ ήταν το εξής: #Invoke as follows: simics -stall -x gzip.simics #Load checkpoint taken after the first breakpoint of the application read-configuration /home/user/simics-workspace/checkpoints/gzip.check #We disable breakpoints disable-magic-breakpoint instruction-fetch-mode instruction-fetch-trace istc-disable dstc-disable #We do not need to mount host and copy benchmarks to root folder. They are already #copied to the checkpoint we saved. #Here is the point right after the first breakpoint. #Load cache hierarcy parameters echo "Loading caches" run-command-file cache-hierarchy.simics #Continue simulation for 100,000,000 instructions to warm-up caches echo "Warming up caches" c 100_000_000 #Reset statistics dc.reset-statistics ic.reset-statistics l2c.reset-statistics ptime #Continue simulation for 1,000,000,000 instructions echo "Simulating..." c 1000_000_000 #Collect statistics dc.statistics
ic.statistics l2c.statistics ptime exit
• SCRIPTS 4.2
Για την 4.2 χρησιμοποίησα ένα script βασισμένο στο παράρτημα Δ σε συνδυασμό με το Γ.Ένα ενδεικτικο script για το mcf benchmark: echo "mcf" #Invoke as follows: simics -stall -x mcf.simics #Load checkpoint taken after the first breakpoint of the application read-configuration /home/vagelis/simics-workspace/mcf.check #We disable breakpoints disable-magic-breakpoint instruction-fetch-mode instruction-fetch-trace istc-disable dstc-disable #We do not need to mount host and copy benchmarks to root folder. They are already #copied to the checkpoint we saved. #Here is the point right after the first breakpoint. #Load cache hierarcy parameters echo "Loading caches" run-command-file cache-hierarchy.simics #Continue simulation for 100,000,000 instructions to warm-up caches echo "Warming up caches" c 100_000_000 $phase = 0 while $phase < 50 { #write results for current phase at different file $outputfile = ("mcf.output." + "phase"+ $phase) output-file-start $outputfile #We need to reset statistics at the beginning of each new phase #(without of course resetting the cache contents) dc.reset-statistics ic.reset-statistics l2c.reset-statistics ptime #Continue simulation for 100,000,000 instructions echo "Simulating for phase " + $phase c 100_000_000 #Collect statistics dc.statistics ic.statistics l2c.statistics
ptime output-file-stop $outputfile $phase += 1 } exit
• Script για την χάραξη γραφικής παραστάσης
Προφανώς, λόγω των πολλων γραφικών παραστάσεων που ζητούνται και ιδιατέρως στο κομμάτι 4.2, όπου κάθε γραφική περιγράφει μετρήσεις 50 σημείων έφτιαξα κάποια scripts για την απ' ευθείας χάραξη γραφικών παραστάσεων απο τα output-files των προσομοιώσεων.Αυτα τα έγραψα σε μορφή shell script.Χρησιμοποίησα τις εντολές cut,grep κ split για να πάρω απ τα output-files τα δεδομένα που ήθελα και να φτιάξω στο τέλος αρχεία με στήλες τις διάφορες μετρήσεις, ώστε κατ ευθειάν με ένα script για το gnuplot να πάρω τις γραφικές παραστάσεις. Μερικά ενδεικτικά scripts:
➔ Για τα L2transactions: Myscript
#!/bin/bash #Myscrip rm final echo "#l2 transactions" > final for (( i = 0 ; i check1 #allazw to ab analoga me to arxeio cut -s -f 2 -d ':' check1 > check #krata to deutero meta to diaxwristiko : cat check >> final #merge files into final done cp final l2transactions rm new*
➔ Για όλες τις γραφικες :”myscriptfinal”
#!/bin/bash #myscriptfinal myscript
myscript1 myscript0 myscripticmisses myscriptmissesdc myscriptmissesl2
pr -m -t -s\ dctransactions l2transactions ictransactions l2readmiss l2writemiss phases l2ifmiss | gawk '{print $1,$2,$3,$4,$5,$6,$7}' > cycles pr -m -t -s\ dctransactions dcwritemiss dcreadmiss phases | gawk '{print $1,$2,$3,$4}' > dcmissrate pr -m -t -s\ ictransactions icfetchmisses phases | gawk '{print $1,$2,$3}' > ic.missrate
gnuplot icscript.p -->Aυτα είναι scripts tou gnuplot gnuplot dcscript.p gnuplot ipc.p
➔ Ένα script tou gnuplot: “ipc.p” set terminal png set output "ipc.png" set autoscale set xlabel "phases" set ylabel "instructions per cycle" plot "cycles" using ($6):((100000000)/(100000000+($1+$3)+$2*20+($4+$5+$7)*300)) title 'ipc' with linespoints;