Mis on jõudluse analüüs?

Mõnikord nimetatakse seda ka profiilide koostamiseks, tarkvaratehnikaga seotud jõudlusanalüüs on lihtsalt protsess, mille käigus hinnatakse konkreetse tarkvaraprogrammi toimimist. See protsess algab tavaliselt sellega, kuidas programm laadib ja mis juhtub iga programmi kasutamise etapi täitmisel. Jõudlusanalüüsi eesmärk on tagada, et tarkvara töötab optimaalse efektiivsusega ning tuvastada ja parandada kõik probleemid, mis võivad seda tõhusust negatiivselt mõjutada.

Jõudlusanalüüs aitab ka inseneril kohandada komponente viisil, mis aitab programmil olemasolevaid ressursse kõige paremini kasutada. Reaalajas täitmist hinnates on võimalik kindlaks teha, kas ülesande kiirendamiseks või ülesande täitmiseks vajaliku mälumahu muutmiseks saab midagi ette võtta, ilma et see kahjustaks tarkvara üldist funktsiooni. Lõplik eesmärk on programm, mis töötab sujuvalt, kiiresti ja töötab iga kord, kui mis tahes ülesanne käivitatakse.

Jõudlusanalüüs on üks dünaamilise programmianalüüsi ehk DPA tüüp. DPA keskendub sellele, mis juhtub programmi aktiivse töötamise ajal, sealhulgas sellele, kuidas ja millises järjekorras ressursse kasutatakse. See erineb staatilisest koodianalüüsist, mis keskendub rohkem sellele, kuidas kood on kirjutatud ja kui loogiline on käskude järjestus. Mõlemat tüüpi analüüsid on aga tarkvara ja tarkvara funktsionaalsuse hindamise ja täiustamise tavalised elemendid.

Programmianalüüsi ajalugu ulatub tagasi andmetöötluse varasematesse aastatesse. 1940. aastate esimeste “elektrooniliste ajude” väljatöötamise ajal võeti kasutusele erinevad meetodid, et testida iga funktsiooni tõhusust, mida antud süsteem oli võimeline täitma. Kuna tehnoloogia arenes edasi, viimistleti erinevates süsteemides töötava tarkvara jõudlustaseme hindamise metoodikat ja see muutus mõnevõrra standardiks. Tänapäeval kasutavad süsteemiarhitektid ja tarkvaraprogrammide autorid programmianalüüsi, et tuvastada programmi konkreetsele versioonile omased tugevused ja nõrkused ning luua probleemidele parandusi. Jõudlusanalüüsi abil kogutud andmed aitavad vältida samade probleemide ilmnemist programmi hilisemates versioonides.

Tegeliku jõudlusanalüüsi protsessi saab siiski teha käsitsi ülevaatusega programmi aktiivse töötamise ajal või automaatselt lõpule viia, koostades andmeid automaatse profileerija abil. Mõlemal juhul kogutakse teavet, mis võimaldab nii tarkvara kirjutajal kui ka süsteemiarhitektil kindlaks teha, mida on vaja teha, et programm töötaks antud süsteemis või võrgus maksimaalse efektiivsusega. Jõudlusanalüüs ei ole ülesanne, mis tehakse üks kord ja loetakse siis tehtuks. Pole ebatavaline, et süsteemiadministraatorid käitavad jõudlusanalüüsi regulaarselt, kuna muude programmide värskendused ja riistvaramuudatused võivad mõjutada analüüsitava programmi tõhusust.