Wat is Profiler?

Hulpmiddel dat meet welke functies of delen van een programma veel uitvoeringstijd gebruiken. Er zijn samplingmethoden en instrumentatiemethoden.

Japanse benaming: プロファイラ

“Profiler” komt voor in 8 oefenvragen uit 2 onderwerpen, bijv. Prestatiemeting en profiling, GPU-programmeren.

Vakgebied: Prestatiemeting en profiling

Nu oefenen: vragen over Profiler

Wat is het juiste doel van het gebruik van een profiler bij het verbeteren van de prestaties van een programma?

  1. ASyntaxisfouten in het programma opsporen
  2. BHet aantal gebruikers van het programma tellen
  3. CNagaan welke functies of delen van het programma het grootste deel van de uitvoeringstijd gebruiken
Antwoord en toelichting tonen

Antwoord: C. Nagaan welke functies of delen van het programma het grootste deel van de uitvoeringstijd gebruiken

Bij veel programma’s wordt het grootste deel van de uitvoeringstijd besteed in een heel klein deel van de code. Wie echter zelf raadt waar het langzaam is, zit er vaak naast. Een profiler meet en toont de uitvoeringstijd en het aantal aanroepen per functie, en zelfs per regel of per instructie. Zoals de wet van Amdahl aangeeft, is het effectief het deel te verbeteren dat veel tijd kost, dus meten is de eerste stap bij prestatieverbetering.

Welke kenmerken heeft een profiler volgens de samplingmethode?

  1. AAlle ingangen en uitgangen van functies worden zonder één uitzondering vastgelegd
  2. BHet programma wordt met vaste tussenpozen onderbroken en de plaats die op dat moment werd uitgevoerd, wordt vastgelegd; plaatsen die vaak worden vastgelegd, worden beschouwd als plaatsen waar veel tijd wordt besteed
  3. CAlleen de broncode van het programma wordt gelezen, zonder uitvoering
Antwoord en toelichting tonen

Antwoord: B. Het programma wordt met vaste tussenpozen onderbroken en de plaats die op dat moment werd uitgevoerd, wordt vastgelegd; plaatsen die vaak worden vastgelegd, worden beschouwd als plaatsen waar veel tijd wordt besteed

Bij de samplingmethode wordt via timer- of prestatieteller-interrupts bijvoorbeeld enkele duizenden keren per seconde de plaats van de lopende instructie (en de aanroepketen) vastgelegd. Plaatsen waar meer tijd wordt besteed, worden vaker vastgelegd, zodat statistisch blijkt waar de belasting zit. Omdat het programma niet wordt herschreven, is de vertraging door het meten klein en kan in een toestand dicht bij de werkelijkheid worden gemeten, maar het exacte aantal aanroepen van zeer korte bewerkingen is niet te achterhalen.

“Profiler” in de toelichting

Vragen met “Profiler” (8)

  1. Wat is het juiste doel van het gebruik van een profiler bij het verbeteren van de prestaties van een programma?
  2. Welke kenmerken heeft een profiler volgens de samplingmethode?
  3. Welke uitspraak over een profiler volgens de instrumentatiemethode, waarbij code om de tijd te meten bij de ingang en uitgang van functies wordt ingevoegd, is juist?
  4. Welke uitspraak over de occupancy van een GPU is juist?
  5. Welke les over de aanpak van prestatieverbetering volgt het best uit de wet van Amdahl?
  6. Welke uitleg van een hotspot bij prestatieanalyse van programma’s is juist?
  7. Welke aanpak is het meest geschikt bij het verbeteren van de prestaties van een programma?
  8. Wat is het meest geschikt om als eerste te controleren bij het analyseren van de prestaties van een programma dat de GPU gebruikt?

Verwante termen

Wet van Amdahl Occupancy GPU Via Prestatieteller (performance counter) Numerieke apertuur (NA) Benchmark CPI CPU-tijd Doorvoer (throughput)

Naar de woordenlijst