De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Realtime cache visualisatie Joachim Vermeir Begeleiders: lic. K. Beyls, Dr Y. Yu Promotor: Prof. Dr. ir. E. D’Hollander.

Verwante presentaties


Presentatie over: "Realtime cache visualisatie Joachim Vermeir Begeleiders: lic. K. Beyls, Dr Y. Yu Promotor: Prof. Dr. ir. E. D’Hollander."— Transcript van de presentatie:

1 Realtime cache visualisatie Joachim Vermeir Begeleiders: lic. K. Beyls, Dr Y. Yu Promotor: Prof. Dr. ir. E. D’Hollander

2 Overzicht 1.Probleemstelling/Doelstelling 2.Achtergrond 3.Aanpak: performance counters/simulatie 4.Realisaties 5.Besluit

3 1.1 Probleemstelling 1.Cachegedrag = onzichtbaar –Cache heeft stijgende invloed op prestatie (antiwet van Moore) –Effecten op de prestatie: I-cache, D-cache –Cache missers: koude, conflict, capaciteit 2.Probleem met het bestaande visualisatieprogramma: TRAAG –Java/Swing UI –De metingen worden gesimuleerd aan de hand van een cache model

4 1.2 Doelstelling Cachegedrag visualiseren –Visualisatie versnellen –Opmeten versnellen Het interactieve aspect uitbreiden –De gebruiker feedback geven over de resultaten

5 2. Achtergrond Bestaande visualisatieprogramma’s: –Cache Visualizer (Yijun Yu) –Vtune (Intel) Thesis van Bart Kerkhof: Exploratie van de mogelijkheden van de huidige visualizer Meetmethodes: –M.b.v. performance counters –Simulatie

6 Soorten cachemissers Koude misser –Treedt op wanneer de data voor de eerste maal gelezen worden en dus nog niet in de cache zitten Capaciteitsmisser –Een misser die optreedt omdat de cache vol zit Conflictmisser –Een misser die optreedt omdat de cachelijn reeds vol zit

7 Bestaande Cache Visualizer Broncode editor Visualisatie van missers/treffers Visualisatie van gerefereerde variabelen

8 3. Aanpak Twee mogelijkheden om cachegedrag te meten Programma Geheugentoegangen Simulatie Performance Counters Visualisatie Cache Visualizer VTUNE

9 3.1 Performance counters Gebeurtenis opgevenPeriode opgeven teller instellen Programma starten/ verderzetten Programma onderbreken en sample wegschrijven Buffer verwerken Periode afgelopen Buffer vol Buffer niet vol CPU_CYCLES L1D_READS_RETIRED

10 Performance counters Voorbeeld: VTune (Intel) Voordeel: –Weinig vertraging Nadelen: –Niet geschikt om individuele cachetoegangen te bestuderen –Geen informatie beschikbaar over het type cachemisser –Bij te frequente gebeurtenissen (events), mogelijk teveel overhead

11 3.2 Simulatie Opmeten van het aantal missers/treffers met behulp van gesimuleerd cachemodel Vb: Cache Visualizer (door Yijun Yu) Nadelen: –zeer traag –De resultaten kunnen afwijken van de werkelijke prestatie van de cache

12 3.2 Simulatie Voordelen: –Individuele geheugentoegangen kunnen onderscheiden worden –Verschillende cachemodellen kunnen gesimuleerd worden –De verschillende soorten missers zijn te onderscheiden

13 4. Realisaties Versnelling en integratie van bestaande Cache Visualizer in Eclipse IDE Traces converteren naar figuren in standaardformaat: PNG Programma om metingen te doen met performance counters Programma voor grafische weergave van de realtime metingen

14 4.1 Resultaat van simulatie Soort cachemisser LokaliteitNaam van de variabele

15 Broncode editor Navigator Visualisatie treffers/missers 4.1 Visualisatie van simulatie

16 Voorbeeld van gevisualiseerde trace broncode

17 Na inzoomen capaciteitsmisser Treffer Koude misser Conflictmisser

18 L2_MISSES L3_MISSES LINENO , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c: , ,scanner.c:407 … L2_MISSES L3_MISSES LINENO 0x d4e6ec 0x x b x da36 0x d6c 0x a01cff 0x a 0x d4de6d 0x fb4ae 0x af6fb 0x a7094 0x c 0x f4e422 0x b 0x cff102 0x adca69 0x ab843a 0x e3b32d 0x b1e6 0x f8 0x c66e9 0x f7a6d 0x a34d959 0x eda 0x b0cb7cc 0x ba19fb 0x be x effae5 0x cb7a695 0x b0d … 0x f1 0x b01b 0x a4d4429 0x bcebcc ---split--- /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:476 /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:407 /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:476 /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:436 /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:113 /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:476 /export/home1/pds02/jovermei/benchmarks/179.art/src/scanner.c:414 … 4.2 Metingen met hardwaretellers Meetperiode Opgemeten gebeurtenissen Niveau-2 cachemissers Niveau-3 cachemissers Lijnnummers

19 Broncode editor Navigator Keuzemenu voor grafische voorstelling Parameters voor metingen 4.2 Metingen met hardwaretellers

20 4.3 Mogelijke visualisaties

21

22 Besluit Beide technieken van opmeten hebben hun voor- en nadelen Met hardwaretellers kan men reeds de knelpunten in een programma aanduiden Wenst men meer detail, dan moet men simulatie gebruiken


Download ppt "Realtime cache visualisatie Joachim Vermeir Begeleiders: lic. K. Beyls, Dr Y. Yu Promotor: Prof. Dr. ir. E. D’Hollander."

Verwante presentaties


Ads door Google