Internet

Benchmarki: co to jest? Po co to jest historia, rodzaje i wskazówki

Spisu treści:

Anonim

Testy porównawcze są istotną częścią naszej codziennej analizy sprzętu, pozwalają nam zaoferować naukowo porównywalny pomiar między różnymi komponentami, takimi jak procesory, karty graficzne, jednostki pamięci itp. Dziś poświęcimy kilka wierszy jego historii, rodzajom, jak działają, co mierzą, jakie są najczęstsze środki, a także podamy kilka wskazówek, jak je przeprowadzić i które z nich powinniśmy ufać.

To, co dziś znamy w świecie komputerów lub urządzeń mobilnych jako wzorce, to techniki odziedziczone po środowisku przemysłowym, które od początku tej rewolucji umożliwiły podejmowanie decyzji na podstawie porównywalnych danych w kontrolowanym środowisku.

Świat współczesnego informatyki stosuje te techniki w prawie każdej z wielu różnych domen, a użytkownicy domowi zastosowali je również jako niezawodny sposób na poznanie wydajności i możliwości naszych systemów, a także ważny punkt informacji, gdy do podejmowania ważnych decyzji, takich jak zakup naszego nowego komputera, telefonu komórkowego, karty graficznej itp.

Dzisiaj porozmawiamy o historii testów wydajności na PC, typach testów, które istnieją i jakie komponenty naszego systemu są bardziej odpowiednie dla tego rodzaju testów, które są nie tylko wydajnością.

Indeks treści

Historia

Benchmark lub system pomiarowy stosuje kontrolowane środowisko i rozpoznawalne miary, które są naukowo porównywalne i weryfikowalne oraz współistnieją ze światem komputerów, odkąd istnieje. Benchmark jako taki został zdemokratyzowany do tego stopnia, że ​​część jego podstawowej istoty została utracona, to znaczy, że może być kontrolowany i weryfikowany przez strony trzecie. Teraz używamy go raczej jako szybkiego porównania wydajności, ale identyfikowalność jego wiarygodności przez strony trzecie z pewnością została w dużej mierze utracona.

Najbardziej klasyczne metody testowe zawsze odnosiły się do mocy obliczeniowej procesora systemu, chociaż w ostatnim czasie różniły się one między różnymi komponentami, ponieważ zyskały one przewagę i znaczenie w komputerze.

Dwie najbardziej klasyczne jednostki miary, które są nadal stosowane, to Dhrystones i Whetstones. Oba stały się w pewnym sensie podstawą wszystkich syntetycznych wzorców, które znamy dzisiaj.

Najstarsze to Whetstones (miejscowość w Wielkiej Brytanii, w której zlokalizowany był dział energii atomowej brytyjskiej państwowej spółki energetycznej), a Dhrystone później przyszedł, bawiąc się nazwą pierwszej (mokra i sucha).

Pierwszy został zaprojektowany w latach 70., a drugi pochodzi z lat 80. i oba są podstawą porównawczej wydajności, którą mieliśmy w kolejnych latach. Upraszczając Whetstones, uzyskano wgląd w moc obliczeniową procesora w operacjach zmiennoprzecinkowych, operacjach z dużą liczbą miejsc po przecinku.

Dhrystone jest jego odpowiednikiem, ponieważ jest poświęcony podstawowym instrukcjom bez miejsc po przecinku, oba dają wyraźny obraz wydajności procesora z dwóch zupełnie różnych, ale uzupełniających się podejść. Whetstones i Dhrystone wywodzą się z dwóch koncepcji, których używamy dziś znacznie częściej, MIPS i FLOP.

Po tych pomiarach pojawiły się inne, takie jak FLOP (arytmetyka zmiennoprzecinkowa - arytmetyka zmiennoprzecinkowa), która jest w dużej mierze ważniejsza teraz w komputerze niż kiedykolwiek, ponieważ jest podstawą zaawansowanych obliczeń w wielu nowoczesnych technikach. takie jak algorytmy sztucznej inteligencji, algorytmy medyczne, prognozowanie pogody, logika rozmyta, szyfrowanie itp.

LINPACK został opracowany przez inżyniera Jacka Dongarrę w latach 80. XX wieku i jest nadal używany do pomiaru wydajności obliczeń zmiennoprzecinkowych wszystkich typów systemów. Obecnie istnieją wersje zoptymalizowane pod kątem architektury, producenta procesora itp.

FLOPS wypełniają nasze artykuły na temat kart graficznych (z pewnością znajomość pojedynczej lub podwójnej precyzji brzmi znajomo), procesorów i są podstawą do obliczania zapotrzebowania na moc i rozwoju sprzętu dla każdego działającego lub rozwijanego superkomputera.

FLOP jest obecnie najbardziej wymaganą jednostką pomiaru wydajności w branży, ale zawsze był łączony z MIPS (miliony instrukcji na sekundę), co jest interesującą miarą pomiaru, ponieważ daje nam liczbę instrukcji Podstawowa arytmetyka, jaką procesor może wykonać na sekundę, ale zależy to bardziej od architektury procesora (ARM, RISC, x86 itd.) I języka programowania niż od innych jednostek miary.

W miarę postępu wydajności pojawiły się mnożniki. Teraz mierzymy wydajność domowych procesorów w GIPS i GFLOPS. Podstawa pozostaje taka sama, klasyczne operacje arytmetyczne. Sisoft Sandra nadal oferuje nam tego rodzaju pomiary w niektórych swoich syntetycznych testach porównawczych.

MIPS został również bardziej przeniesiony do CPU jako klasyczny element, a FLOP rozszerzył się na inne dobrze prosperujące obszary, takie jak pojemność procesu lub ogólne obliczenia byłych procesorów bardzo zorientowanych na konkretne zadania, takie jak procesory graficzne, które wszyscy montujemy na naszych procesorach lub na nasze dedykowane karty rozszerzeń.

Do tych podstawowych pojęć czas dodawał nowe jednostki miary równie ważne lub ważniejsze niż te w nowoczesnym komputerze lub superkomputerze. Przesyłanie danych jest jednym z tych środków, który stał się bardzo ważny i jest obecnie mierzony w procesorach IOP (operacje wejścia i wyjścia na sekundę), a także w innych formach, takich jak miary pamięci MB / GB / TB w porównaniu do czasu potrzebnego na tranzyt z jednego punktu do drugiego (MB / s - megabajty na sekundę).

AS-SSD może mierzyć wydajność dysku twardego w MBps lub procesorach IOP.

Obecnie używamy również miary transferu, w jej różnych multiplikatorach, jako sposobu interpretacji prędkości przepływu informacji między dwoma punktami, kiedy do emitowania pewnych informacji w rzeczywistości musimy wygenerować nieco więcej informacji. Zależy to od protokołu używanego do przesyłania informacji.

Wyraźny przykład, którego często używamy, znajduje się w interfejsie PCI Express. Zgodnie z tym protokołem na każde 8 bitów informacji, które chcemy przenieść (0 lub 1 s), musimy wygenerować 10 bitów informacji, ponieważ te dodatkowe informacje służą do kontroli komunikacji wysyłanej w celu korekcji błędów, integralności danych itp.

Innymi dobrze znanymi protokołami, które również wprowadzają tę „utratę” prawdziwych informacji, jest adres IP, którego używasz do czytania tego artykułu i który sprawia, że ​​twoje połączenie 300MT / s faktycznie oferuje prędkość nieco mniejszą niż 300 Mb / s.

Dlatego używamy Gigatransfer lub transferu, gdy mówimy o nieprzetworzonych informacjach wysyłanych przez interfejs, a nie o informacjach faktycznie przetwarzanych w odbiorniku. Magistrala danych PCI Express 3.0 8GT / s faktycznie wysyła 6, 4 GB / s informacji dla każdej linii podłączonej między punktami. Transfer stał się bardzo ważny dzięki integracji protokołu PCI Express we wszystkich głównych magistralach komputera domowego i profesjonalnego.

W ostatnim czasie zaczęliśmy również łączyć miary jako sposób powiązania mocy obliczeniowej z innymi bardzo ważnymi czynnikami we współczesnych komputerach, przy czym zużycie jest jednym z tych mierników, który jest wprowadzany jako skala porównawcza między wydajnością dwóch systemów. Efektywność energetyczna jest dziś równie ważna lub ważniejsza niż moc procesowa, dlatego łatwo jest zobaczyć wzorce porównujące moc procesową w zależności od zużycia elementu w pomiarze.

W rzeczywistości jedna z wielkich list superkomputerów nie odnosi się tak bardzo do mocy brutto komputera wśród wszystkich jego węzłów obliczeniowych, ale do rozwoju tej mocy w oparciu o waty lub energię zużywaną przez cały system. Lista Green500 (FLOPS na wat - FLOPS na wat) jest wyraźnym przykładem tego, jak zużycie jest teraz podstawowe dla każdego szanującego się poziomu odniesienia, chociaż bez wątpienia wszyscy nadal uważnie przyglądamy się liście TOP500, która nie ma tego czynnika jako czynnika warunkującego.

Rodzaje testów porównawczych

Chociaż możemy mówić o wielu innych rodzinach lub typach testów porównawczych, uproszczę listę w dwóch najpopularniejszych klasach tych, którzy są nam bliscy jako mniej lub bardziej zaawansowani użytkownicy.

Z jednej strony mamy syntetyczne testy porównawcze, które są w dużej mierze tymi, które oferują nam środki, o których mówiliśmy wcześniej. Testy syntetyczne to programy, które wykonują kontrolowane testy z mniej lub bardziej stabilnym kodem programu zorientowanym na konkretną platformę i architekturę. Są to programy, które przeprowadzają bardzo specyficzne testy, które mogą zintegrować jeden lub więcej naszych komponentów, ale w których ten sam test lub testy są zawsze przeprowadzane, bez zmian.

Renderowanie obrazu zawsze było dobrą metodą poznania wydajności procesora w nowoczesnym systemie, ponieważ jest to wymagające zadanie. Cinebench R15 ma również kilka testów, jeden dla GPU i dwa dla CPU, gdzie możemy poznać wydajność systemów z wieloma rdzeniami i wątkami procesowymi.

Oferują kontrolowane środowisko testowe, w którym nie ma żadnych zmian oprócz wersji i gdzie zmiany te są odpowiednio udokumentowane, dzięki czemu użytkownik wie, które wersje można ze sobą porównać. Tego rodzaju programy mogą testować różne podsystemy naszego komputera osobno, z innymi fragmentami kodu lub konkretnymi testami porównawczymi w celu przeprowadzenia określonego rodzaju testu, lub łącznie, na które może mieć wpływ wydajność jednego, dwóch lub więcej składników systemu. Benchmark zintegrowany z grą lub programy takie jak Cinebench, Sisoft Sandra, SuperPI, 3DMark,… są wyraźnymi przykładami syntetycznych testów porównawczych.

Inne syntetyczne testy porównawcze, których nie powinniśmy mylić z rzeczywistymi testami porównawczymi, to te, które symulują wykonywanie prawdziwych programów lub wykonują skrypty akcji w rzeczywistych programach, są one również syntetyczne, ponieważ w teście nie ma losowości, PC Mark jest wyraźnym przykładem syntetyczny program testowy, który możemy pomylić z prawdziwym testem porównawczym.

Rzeczywisty test porównawczy jest zupełnie inną metodą testową, ponieważ akceptuje losowość używania programu do mierzenia jego wydajności. Gracze są przyzwyczajeni do przeprowadzania tego typu testów wydajności lub testów wydajności, gdy dostosowujemy parametry jakości gry do możliwości naszego sprzętu.

Mierzenie wydajności gry podczas gry jest prawdziwym punktem odniesienia.

Gdy otworzysz liczbę klatek na sekundę, którą daje gra i spróbujesz osiągnąć pożądane 60 klatek na sekundę w sposób ciągły, będą oni wykonywać prawdziwy test porównawczy. To samo można ekstrapolować na dowolny inny rodzaj programu, a jeśli jesteś programistą, kiedy optymalizujesz kod swojego programu, robisz również prawdziwe testy porównawcze, w których jakie zmiany to Twój kod lub sposób jego wykonania, na platformie stabilny lub zmienny sprzęt.

Oba typy testów porównawczych są ważne, pierwsze pozwalają nam porównać nasz system z innymi w kontrolowanym środowisku, a drugie są sposobem na zoptymalizowanie naszego działania, do którego dodawane są również dwa ważne czynniki, losowość wykonania i czynnik ludzki. Oba czynniki oferują dodatkowe spojrzenie na wydajność komponentu lub komponentów, które chcemy przetestować.

Uwagi dotyczące analizy porównawczej

Aby benchmark był użyteczny i skuteczny, musimy wziąć pod uwagę pewne czynniki, które są naprawdę ważne. Porównanie różnych platform i architektur wprowadza ważny czynnik niepewności, dlatego tego rodzaju testy porównawcze, które dają możliwość porównania telefonów komórkowych z systemem iOS z komputerami z systemem Windows x86, aby dać przykład, musisz wziąć je za pomocą pincety, ponieważ nie tylko się zmienia jądro systemu operacyjnego, ale architektury procesorów są bardzo różne. Twórcy tego typu testów porównawczych (na przykład Geekbench) wprowadzają współczynniki korekcji między różnymi wersjami, których nie da się kontrolować.

Dlatego pierwszym kluczem do porównywalności testu porównawczego między różnymi urządzeniami jest to, że ekosystem testowy jest możliwie najbardziej podobny do platformy testowej, systemu operacyjnego, sterowników i wersji oprogramowania. Z pewnością pojawią się tutaj elementy, których nie możemy kontrolować homogenizacji, takie jak kontroler grafiki, jeśli testujemy grafikę AMD na grafice Nvidii, ale resztę musimy starać się, aby była jak najbardziej stabilna. W tym przypadku uwzględnilibyśmy również sprzęt, ponieważ do porównania kart graficznych należy używać tego samego systemu operacyjnego, tego samego procesora, tych samych pamięci i wszystkich parametrów operacyjnych, utrzymując je bez zmian, w tym parametry jakości, rozdzielczości i testu w teście porównawczym. Im bardziej stabilny jest nasz ekosystem testowy, tym bardziej wiarygodne i porównywalne będą nasze wyniki.

Zalecamy przeczytanie Jak się dowiedzieć, czy mój procesor ma wąskie gardło?

Kolejną rzeczą, którą musimy wziąć pod uwagę, jest to, że testy porównawcze zwykle obciążają sprzęt, który będziemy testować, i zwykle narażają ten sprzęt na sytuacje, które normalnie nie występują podczas normalnego użytkowania systemu. Każdy test porównawczy, który pobieramy z dysku twardego, karty graficznej lub procesora, poddaje je sytuacjom, które mogą być niebezpieczne dla sprzętu, dlatego musimy ustalić odpowiednie środki, aby punkt obciążenia nie stał się punktem pęknięcia ani też element zmniejszenia wydajności, ponieważ wiele elementów ma systemy ochronne, za pomocą których zmniejszają swoją wydajność w przypadku, na przykład, temperatur poza ich zakresem użytkowania. Odpowiednie chłodzenie, okresy odpoczynku między testami, prawidłowe podawanie testowanych komponentów… wszystko powinno być w idealnej sytuacji, aby test przebiegał sprawnie.

Z drugiej strony, używamy również dokładnie tego rodzaju testów porównawczych, aby poddać system obciążeniom, aby zobaczyć jego stabilność w tego rodzaju sytuacjach, jest to inny sposób zastosowania testu porównawczego, ponieważ nie tylko stara się poznać wydajność, ale także czy system jest stabilny, a nawet bardziej, jeśli system działa tak, jak powinien w tych stresujących sytuacjach.

Wniosek

Dla tych z nas, którzy zajmują się profesjonalnym testowaniem sprzętu komputerowego, test porównawczy jest działającym narzędziem, dzięki czemu użytkownicy mają naukowy i weryfikowalny sposób na dokładne porównanie lub poznanie wydajności naszego następnego komputera w każdym z jego podsystemów. porównywalne do narzędzi używanych na poziomie przemysłowym.

Tabela testowa, taka jak ta widoczna na zdjęciu, ma na celu precyzyjną standaryzację metody testowej, tak aby porównawczy test porównawczy był jak najbardziej wiarygodny i możliwy do przetestowania przy wprowadzaniu odmian modyfikujących wyniki.

Ale jak każdy test „laboratoryjny”, aby był wiarygodny, muszą istnieć odpowiednie warunki do jego przeprowadzenia, a tym bardziej, aby był porównywalny między różnymi systemami.

Dzisiaj opowiedzieliśmy trochę o historii tego rodzaju programu, jego różnych typach, jak działają i jak uzyskać od nich wiarygodne informacje. Są przydatne, ale dla mnie to tylko jedna dodatkowa informacja, o której należy pamiętać, a ja zawsze umieszczam ją za osobistym doświadczeniem i aktywnymi testami z prawdziwymi programami, z których będziemy korzystać każdego dnia.

Testy porównawcze są w porządku, aby umieścić minimalne dane dotyczące wydajności w naszym procesie decyzyjnym, ale nie powinny one definiować tych decyzji i, na koniec, unikać syntetycznych testów porównawczych, które twierdzą, że są w stanie porównać wydajność między architekturami, systemami operacyjnymi itp.

Internet

Wybór redaktorów

Back to top button