Prestatiemeting en profiling
Een programma was langzaam, hoewel het CPU-gebruik laag was, ongeveer 20 %. Wat is de meest waarschijnlijke oorzaak?
- ADe CPU rekent te snel
- BHet programma heeft te weinig instructies
- CEr wordt lang gewacht zonder de CPU te gebruiken, bijvoorbeeld op schijf- of netwerk-I/O of op locks
Antwoord en toelichting tonen
Antwoord: C. Er wordt lang gewacht zonder de CPU te gebruiken, bijvoorbeeld op schijf- of netwerk-I/O of op locks
Als het CPU-gebruik laag is en het programma toch langzaam, wordt het grootste deel van de tijd waarschijnlijk besteed aan wachten op iets buiten de CPU. Voorbeelden zijn schijf lezen en schrijven, netwerkantwoorden en het vrijgeven van een lock die door een andere thread wordt vastgehouden. In dat geval heeft een snellere CPU of het optimaliseren van de rekencode nauwelijks effect. Effectief zijn het bundelen van I/O, het asynchroon maken zodat tijdens het wachten andere verwerking doorgaat, en het verkleinen van het bereik van locks.