Profilering (datavetenskap)

Profilering  - samla in egenskaper hos programmet , såsom exekveringstiden för enskilda fragment (vanligtvis subrutiner), antalet korrekt förutsagda villkorliga hopp , antalet cachemissar , etc. Verktyget som används för att analysera arbetet kallas en profilerare eller profilerare ( eng.  profiler ). Utförs vanligtvis i samband med programoptimering .

Egenskaper kan vara hårdvarudrivna (tid) eller mjukvarudrivna (funktionsbegäran). Programanalysverktyg är extremt viktiga för att förstå ett programs beteende. Mjukvarudesigners behöver sådana verktyg för att utvärdera hur väl ett jobb utförs. Programmerare behöver verktyg för att analysera sina program och identifiera kritiska programområden .

Detta används ofta för att bestämma hur lång tid det tar att köra vissa delar av ett program, hur ofta de körs eller för att generera en samtalsgraf . Vanligtvis används denna information för att identifiera de områden i programmet som fungerar mest. Dessa tidskrävande områden kan optimeras för att köras snabbare.

Det finns också kodtäckningsanalys, vilket är processen att identifiera oanvända kodavsnitt genom att till exempel köra programmet flera gånger.

Ett exempel på prestandaprofileringsprogram

Lista : Lista över  prestationsanalysverktyg

Universallösningar för flera plattformar:

Lösningar för enskilda operativsystem

För individuella programmeringsspråk (sådana verktyg kan byggas in i utvecklingsmiljön ):

Ett exempel på minnesprofileringsprogram:

Länkar