Czy benchmarki kłamią?

Znaleźć standard pomiaru wydajności

Poszukiwania standardowych mierników wydajności były powodem powstania w 1988 r. organizacji SPEC (Standard Performance Evaluation Corp.). Pierwszym benchmarkiem był SPECmark badający CPU, w którym jednostką był ekwiwalent wydajności maszyny VAX 11/780. Obecnie SPEC przygotowuje i publikuje wiele różnych mierników wydajności, z których warto wymienić:

- SPEC CPU2006 - badający wydajność obliczeniową mikroprocesorów

- testy z rodziny SPECviewperf 10, SPECapcSM for 3ds Max 9, SPECapcSM for Lightwave 3D 9.6 i inne - określające wydajność w zadaniach graficznych i multimedialnych

- SPEC MPI2007 - który służy do pomiaru wydajności superkomputerów

- SPECjAppServer2004 - wyznaczający wydajność maszyny przy obsłudze pracy serwerów aplikacyjnych J2EE 1.3

- SPECmail - który mierzy wydajność maszyny przy pracy jako korporacyjny serwer poczty elektronicznej

- SPECsfs2008 - za pomocą którego można porównać wydajność sieciowych serwerów plików NFS v3 oraz CIFS

- SPECweb2005 - który określa wydajność maszyny jako serwer WWW

- SPECpower_ssj2008 - który określa wydajność w stosunku do pobieranej mocy zasilania.

Chociaż Linpack jest nadal popularny w środowisku superkomputerów (głównie dlatego, że obliczenia badawcze i inżynierskie stanowią gros zadań, które przetwarzają te maszyny), mierniki SPEC są coraz częściej wykorzystywane przy porównywaniu różnych maszyn, gdyż za ich pomocą można symulować obciążenie zbliżone do tego, któremu będzie poddana docelowa maszyna. Ponieważ mierzą one ogólny wynik, na rezultat mogą mieć wpływ niemal wszystkie najważniejsze składniki komputera (nie tylko procesor, ale także pamięć, kontroler dyskowy, karta sieciowa itd.). Tak jest w istocie, dlatego wyniki publikowane na stronach www.specbench.org zawierają informacje o producencie, badanym modelu komputera, jego wyposażeniu, systemie operacyjnym, systemie plików, dodatkowym oprogramowaniu, innym niż standardowa instalacja, a także o trybie pracy systemu (Runlevel w systemach typu Unix, takich jak Linux). Na stronach SPEC można znaleźć wyniki pomiarów nie tylko najmocniejszych serwerów, ale także stacji roboczych.

Wydajność wg SAP

Aby zmierzyć wydajność konkretnych maszyn, opracowano standardowe środowisko biznesowe, składające się z aplikacji SAP ERP 6.0 w środowisku Windows Server 2008 Enterprise Edition i bazie SQL Server 2008. Typowe wyniki dwuprocesorowej maszyny z procesorami X5570 (taktowanymi zegarem 2,93 GHz) to 3300 użytkowników, średni czas odpowiedzi 0,98 sekundy i ok. 360 tys. w pełni obsłużonych zleceń na godzinę przy obciążeniu obu procesorów na poziomie 98%. W przypadku tego testu badano dwuprocesorową maszynę HP ProLiant DL380 G6 (dane na podstawie certyfikacji SAP numer 2009004). Starsze procesory X5470 (maszyna HP ProLiant DL380 G5) osiąga wyniki: 2518 użytkowników, średni czas odpowiedzi 1,99 sekundy i 252 tys. w pełni obsłużonych zleceń na godzinę przy obciążeniu obu procesorów rzędu 99% (dane na podstawie certyfikacji SAP numer 2008047). Jak widać, nowsze procesory są znacznie sprawniejsze w aplikacjach biznesowych, nawet jeśli w zastosowaniach inżynierskich przegrywają. Dla porównania komputer z procesorami AMD, HP ProLiant DL785 G5 z 8 czterordzeniowymi procesorami Opteron 8393SE taktowanymi zegarem 3,1GHz, osiąga 603670 w pełni obsłużonych transakcji na godzinę przy średnim czasie odpowiedzi 0,97 sekundy i obciążeniu procesorów 99% (certyfikacja numer 2009009). Dzięki koncentracji na konkretnej aplikacji biznesowej, można w ten sposób porównać także rozwiązania działające w różnych architekturach z użyciem różnych baz danych (SQL Server działa jedynie na platformie x86 w systemie Windows). Przykładowy komputer SPARC Enterprise Server M9000 z 32, czterordzeniowymi procesorami SPARC64 VII osiąga 2,469 mln w pełni obsłużonych transakcji na godzinę przy średnim czasie odpowiedzi 1,98 sekundy, pracując w systemie Solaris 10 z bazą danych Oracle 10g (certyfikacja numer 2008075).


TOP 200