Ławka

NBench , skrót od Native mode Benchmark , a później znany jako BYTEmark , to program do testów porównawczych obliczeń syntetycznych opracowany w połowie lat 90. przez nieistniejący już magazyn BYTE , przeznaczony do pomiaru szybkości procesora , FPU i systemu pamięci komputera .

Historia

NBench jest zasadniczo wydaniem 2 programu porównawczego BYTEmark BYTE Magazine (wcześniej znanego jako BYTE's Native Mode Benchmarks), opublikowanego około 1995 roku, czyli zaledwie kilka lat przed zaprzestaniem publikacji magazynu. NBench jest napisany w C i początkowo koncentrował się na komputerach PC z systemem operacyjnym Microsoft Windows . Niezależnie od BYTE, w 1996 roku NBench został przeniesiony na Linuksa i inne odmiany Uniksa przez Uwe F. Mayera. Niedawno Ludovic Drolez przygotował aplikację NBench na Androida system operacyjny urządzenia mobilnego. NBench nie należy mylić z podobnie nazwanym, ale niepowiązanym AMD N-Bench.

Projekt

Zestaw algorytmów NBench składa się z dziesięciu różnych zadań:

  • Sortowanie numeryczne — sortuje tablicę długich liczb całkowitych.
  • Sortowanie ciągów — sortuje tablicę łańcuchów o dowolnej długości.
  • Bitfield — wykonuje różne funkcje manipulacji bitami.
  • Emulowany zmiennoprzecinkowy — mały pakiet oprogramowania zmiennoprzecinkowego .
  • Współczynniki Fouriera - procedura analizy numerycznej służąca do obliczania serii przybliżeń przebiegów.
  • Algorytm przydziału — dobrze znany algorytm przydziału zadań.
  • Kompresja Huffmana - Dobrze znany algorytm kompresji tekstu i grafiki.
  • Szyfrowanie IDEA - Stosunkowo nowy algorytm szyfrowania blokowego.
  • Sieć neuronowa - Mały, ale funkcjonalny symulator sieci ze wsteczną propagacją.
  • Dekompozycja LU — solidny algorytm rozwiązywania równań liniowych.

Przebieg pakietu porównawczego składa się zasadniczo z dwóch faz dla każdego z testów. Najpierw uruchamiana jest pętla kalibracji, aby określić rozmiar problemu, z jakim system może sobie poradzić w rozsądnym czasie, aby dostosować się do coraz szybszego dostępnego sprzętu komputerowego. Po drugie, rzeczywisty test jest powtarzany kilka razy, aby uzyskać statystycznie znaczący wynik.

Pierwotnie NBench i BYTEmark stworzyły dwa ogólne indeksy: indeks całkowity i indeks zmiennoprzecinkowy. Indeks całkowity jest średnią geometryczną tych testów, które obejmują tylko przetwarzanie liczb całkowitych — sortowanie numeryczne, sortowanie łańcuchowe, pole bitowe, emulowane operacje zmiennoprzecinkowe, przypisanie, Huffman i IDEA — podczas gdy indeks zmiennoprzecinkowy jest średnią geometryczną tych testów, które wymagają koprocesora zmiennoprzecinkowego — Fouriera, sieci neuronowej i dekompozycji jednostek logicznych. Indeks przedstawia względne wyniki, które pozwalają uzyskać ogólne odczucie wydajności testowanej maszyny w porównaniu z podstawowym systemem opartym na procesorze Pentium Intel 90 MHz.

Port Linux/Unix ma drugą podstawową maszynę, jest to AMD K6/233 z 32 MB RAM i 512 KB pamięci podręcznej L2 z Linuksem 2.0.32 i GNU gcc w wersji 2.7.2.3 i libc-5.4.38. Oryginalny indeks liczb całkowitych został podzielony na operacje na liczbach całkowitych i indeks operacji na pamięci, zgodnie z sugestią Andrew D. Balsy, odzwierciedlając świadomość, że zarządzanie pamięcią jest ważne w projektowaniu procesora. Oryginalne testy zostały pozostawione same sobie, jednak średnia geometryczna testów sortowania numerycznego, emulacji zmiennoprzecinkowej, IDEA i Huffmana stanowi teraz indeks wzorcowy skoncentrowany na arytmetyce liczb całkowitych, podczas gdy średnia geometryczna testów sortowania łańcuchowego, bitfield, a przypisanie tworzy nowy indeks pamięci. Indeks zmiennoprzecinkowy został pozostawiony w spokoju, nadal jest średnią geometryczną dekompozycji Fouriera, sieci neuronowej i LU.

Używać

Zestaw testów porównawczych był stale używany od połowy lat 90. przez społeczność komputerów osobistych na komputerach PC i innych urządzeniach z różnymi odmianami systemu UNIX, w tym Linux lub BSD , lub z systemem Windows (zwykle w połączeniu z Cygwin ), a także na komputerach Mac ( jest w szczególności dostępny jako port Darwina ). Strona wyników z uruchomień na wielu różnych konfiguracjach sprzętowych, od serwerów wieloprocesorowych o dużej mocy po przełączniki sieciowe o niskim poborze mocy, jest utrzymywana przez oryginalnego portera.

niedociągnięcia

Używanie NBench jako punktu odniesienia ma pułapki:

  • Te testy porównawcze mają na celu ujawnienie teoretycznej górnej granicy architektury procesora, jednostki FPU i pamięci systemu. Nie mogą mierzyć przepustowości wideo, dysku ani sieci (są to domeny innego zestawu testów porównawczych).
  • NBench jest jednowątkowy. Obecnie każdy test porównawczy wykorzystuje tylko jeden wątek wykonania. Jednak większość nowoczesnych systemów operacyjnych zawiera komponent wielozadaniowości. To, w jaki sposób system „skaluje się”, gdy więcej zadań jest uruchamianych jednocześnie, jest efektem, którego NBench nie bada.

Zobacz też

Linki zewnętrzne