Hvad er ydelsesanalyse?
Nogle gange omtalt som profilering, er præstationsanalyse, da det vedrører softwareteknik, simpelthen processen med at evaluere, hvordan et bestemt softwareprogram fungerer. Denne proces begynder normalt med, hvordan programmet indlæses, og hvad der sker, når hvert trin i brugen af programmet udføres. Formålet med præstationsanalyser er at sikre, at softwareprogrammet fungerer optimalt og at identificere og rette eventuelle problemer, der kan have negativ indflydelse på effektiviteten.
Ydelsesanalyse hjælper også ingeniøren med at justere komponenter på en måde, der hjælper programmet med at udnytte de tilgængelige ressourcer bedst muligt. Ved at evaluere henrettelser i realtid er det muligt at bestemme, om der kunne gøres noget for at fremskynde en opgave, eller ændre den mængde hukommelse, der kræves for at køre opgaven, uden at det påvirker softwarens overordnede funktion negativt. Det endelige mål er et program, der kører problemfrit, hurtigt og fungerer hver gang enhver opgave startes.
Prestationsanalyse er en type dynamisk programanalyse eller DPA. DPA fokuserer på hvad der sker, når et program kører aktivt, herunder hvordan ressourcer bruges og i hvilken rækkefølge. Dette er forskellig fra statisk kodeanalyse, der har tendens til at fokusere mere på, hvordan koden skrives, og hvor logisk rækkefølgen af kommandoer sker. Begge typer analyser er imidlertid almindelige elementer i evaluering og forfining af software og softwarefunktionalitet.
Programanalysens historie går tilbage til de tidligste år med computing. Under udviklingen af de første "elektroniske hjerner" i 1940'erne blev der indført forskellige metoder til at teste effektiviteten af hver funktion, som et givet system var i stand til at udføre. Da teknologien fortsatte med at gå videre, blev metodologien til evaluering af ydelsesniveauet for software, der kører på forskellige systemer, forfinet og blev noget standardiseret. I dag bruger systemarkitekter og softwareprogramforfattere programanalyse til at identificere styrker og svagheder, der er forbundet med en given version af et program, og skabe rettelser til eventuelle problemer. Data indsamlet ved præstationsanalyse hjælper med at forhindre, at de samme problemer vises i senere udgivelser af programmet.
Den aktuelle proces med ydeevne-analyse kan stadig udføres ved manuel gennemgang under den aktive drift af et program eller gennemføres automatisk ved at udarbejde data ved hjælp af en automatiseret profiler. I begge tilfælde indfanges information, der giver både en softwareforfatter eller en systemarkitekt mulighed for at bestemme, hvad der skal gøres, for at programmet kan arbejde på højeste effektivitet på et givet system eller netværk. Performance-analyse er ikke en opgave, der udføres én gang og derefter betragtes som udført. Det er ikke usædvanligt for systemadministratorer at køre en præstationsanalyse på et tilbagevendende grundlag, da opdateringer til andre programmer såvel som hardwareændringer muligvis kan påvirke effektiviteten af det program, der gennemgår analysen.