Tstowanie wydajności

Benchmarking oznacza mierzenie prędkości z jaką system wykonuje zadania. Możemy mierzyć czas przełączania kontekstu, czas allokacji nowego segmentu pamięci RAM, czy przepustowość łączy komunikacji. Istnieje wiele programów do mierzenia wydajności, ale nie istnieje jakiś jeden najlepszy. Wybór programu do benchmarkingu zależy od tego co chcemy testować. Są różne benchmarki do pomiaru parametrów sieci, dysku(I/O), grafiki, 3D, CD-ROM, Web serwera.
Benchmarki możemy podzielić na syntetyczne oraz aplikacyjne.
Testy syntetyczne służą do pomiarów pojedynczych komponentów systemu, dają nam informacje o pomiarze jakiejś składowej niezależnie od pozostałych aspektów. Np wyniki testu karty sieciowej powinny być zbliżone na 386SX-16 z 4MB RAM czy na Pentium 200MMX z 64MB RAM. Wadą takich testów jest to, że nie dają informacji o szybkości całego komputera. Np jezeli komputer ma wolny dysk, to wymiana procesora na szybszy nie przyniesie wzrostu szybkości jakiej byśmy oczekiwali.
Przykłady benchmarków syntetycznych:

Znacznie lepsze efekty dają testy aplikacyjne, które wykorzystują konkretne aplikacje biurowe czy multimedialne i mierzą czas wykonywania różnych zadań, np. przetwarzania dokumentów czy obróbki obrazu. Wadą takich testów jest to, że nie można ich odpalić na wszystkich platformach lub na starzych komputerach.
Przykłady benchmarków aplikacyjnych:

LMBench

LMBench jest narzędziem służącym do analizy wydajności dla systemów unixowych. Pakiet LMBench udostępnia narzędzia pozwalające na mierzenie szerokości pasma(bandwidth):

albo czasu oczekwania na (latency)

Przykładowe wyniki uzyskane za pomocą LMBench.


Bibliografia



Strona główna