Dlaczego GPU działa szybciej niż procesor

17 lutego 2021

Niektórzy użytkownicy Bitcoinów mogą się zastanawiać, dlaczego istnieje ogromna rozbieżność między wydajnością wydobywczą procesora a GPU.

Po pierwsze, dla wyjaśnienia, procesor lubjednostka centralnajest częścią komputera, która wykonuje wolę oprogramowania załadowanego na komputer. To główny wykonawca całej maszyny. To mistrz mówi wszystkim częściom komputera, co mają robić – zgodnie z kodem programu oprogramowania i, miejmy nadzieję, wolą użytkownika.

Większość komputerów ma obecnie wielordzeniowe procesory (co jest prawie tym samym, co posiadanie wielu procesorów w jednym fizycznym pakiecie)., A niektóre komputery mają nawet wiele procesorów.

Procesor jest zwykle wymiennym komponentem, który podłącza się do głównej płytki drukowanej komputera lubpłyty główneji znajduje się pod dużym, metalowym radiatorem, który zwykle ma wentylator, kilka z nich jest chłodzonych wodą.

GPU, czylijednostka przetwarzania grafiki, jest częścią systemu renderowania wideo komputera. Typową funkcją GPU jest pomoc w renderowaniu grafiki 3D i efektów wizualnych, dzięki czemu procesor nie musi tego robić.

Serwery zwykle mają bardzo ograniczone możliwości GPU lub nie mają ich wcale, ponieważ są w większości zarządzane przez zdalny interfejs tekstowy. Większość komputerów głównego nurtu ma znacznie wolniejsze, ale mniej energochłonne i tańsze procesory IGP (zintegrowany procesor graficzny), które są również procesorami graficznymi, ale są zintegrowane bezpośrednio z chipsetem i przylutowane do płyty głównej, a nie oddzielne, mocniejsze, ale energochłonne karty AGP lub PCIe z GPU, ale oddzielne GPU. Wydajne układy GPU są potrzebne głównie do zadań wymagających dużej grafiki, takich jak gry lub edycja wideo. Na przykład półprzezroczyste okna w systemie Windows 7 lub technologie takie jak Quartz systemu Mac OS X, które zasilają pulpit Aqua i jego piękne, podobne do wody efekty graficzne i animacje, takie jak wybrzuszanie Docku w płynnej animacji, gdy mysz jest przenoszona na dolna krawędź ekranu lub „ssanieokna do Docka, gdy są zminimalizowane – są one zasilane przez GPU.

GPU jest jak procesor, ale istnieją ważne wewnętrzne różnice, które sprawiają, że nadaje się do ich specjalnych zadań. Są to różnice, które sprawiają, że wydobywanie bitcoinów jest znacznie korzystniejsze na GPU.

Zawartość
  • 1 krótka odpowiedź
  • 2 Procesor jest wykonawcą3 GPU to robotnik4 Analogia5 Dlaczego procesory graficzne AMD są szybsze niż procesory graficzne Nvidia?6 NVIDIA wypuszcza NOWE Generacje kart GPU7 Zobacz teżKrótka odpowiedź

    Rdzeń procesora może wykonywać432-bitowe instrukcje na zegar (używając 128-bitowej instrukcji SSE) lub8przez AVX (256-bitowe), podczas gdy GPU, taki jak Radeon HD 5970, może wykonywać320032-bitowych instrukcji na zegar (używając 3200 jednostek ALU lub shaderów). Jest to różnica800 (lub 400 w przypadku AVX) razy więcej instrukcji na zegar. Od 2011 roku najszybsze procesory mają do 6, 8 lub 12 rdzeni i nieco wyższą częstotliwość zegara (2000-3000 MHz w porównaniu z 725 MHz dla Radeona HD 5970), ale jeden HD5970 jest nadal ponad pięć razy szybszy niż cztery 12-rdzeniowe procesory o częstotliwości 2,3 GHz (co również kosztowałoby około 4700 USD zamiast 350 USD w przypadku HD5970).

    CPU to kierownik

    Procesor ma przede wszystkim pełnić funkcję wykonawczą i podejmować decyzje zgodnie z zaleceniami oprogramowania. Na przykład, jeśli wpiszesz dokument i zapiszesz go, zadaniem procesora będzie przekształcenie dokumentu w odpowiedni typ pliku i skierowanie dysku twardego do zapisania go jako pliku. Procesory mogą również wykonywać wszelkiego rodzaju obliczenia matematyczne, ponieważ w każdym procesorze znajduje się jedna lub więcej jednostek arytmetycznych / logicznych (ALU). Procesory są również bardzo zdolne do wykonywania instrukcji „jeśli to zrób tamto, w przeciwnym razie zrób coś innego. Duża większość struktur wewnątrz procesora zajmuje się upewnieniem się, że procesor jest gotowy do radzenia sobie z koniecznością przełączania się do innego zadania w dowolnym momencie, gdy zajdzie taka potrzeba.

    Procesory muszą również radzić sobie z wieloma innymi rzeczami, które dodają złożoności, w tym:

    • wymuszanie poziomów uprawnień i granic między programami użytkownika a systemem operacyjnym
    • tworzenie iluzji „pamięci wirtualnej dla programówdla najpopularniejszych procesorów, będąc wstecznie kompatybilnym ze starszym kodemGPU to robotnik

      GPU jest zupełnie inny. Tak, GPU może wykonywać obliczenia matematyczne, a także wykonywać „to i „tamto w oparciu o określone warunki. Jednak procesory GPU zostały zaprojektowane tak, aby były bardzo dobre w przetwarzaniu wideo i mniej pracy wykonawczej.

      Przetwarzanie wideo to dużo powtarzalnej pracy, ponieważ ciągle mówi się mu, aby robił to samo z dużymi grupami pikseli na ekranie. Aby ten przebieg był efektywny, procesory wideo są znacznie bardziej obciążone możliwością wykonywania powtarzalnej pracy niż zdolność do szybkiego przełączania zadań.

      Procesory graficzne mają dużą liczbę jednostek ALU, więcej niż procesory. W rezultacie mogą wykonać duże ilości pracy matematycznej w większej ilości niż procesory.

      Analogia

      Jednym ze sposobów wizualizacji tego jest to, że procesor działa jak mała grupa bardzo inteligentnych ludzi, którzy mogą szybko wykonać każde powierzone im zadanie. GPU to duża grupa stosunkowo głupich ludzi, którzy nie są indywidualnie bardzo szybcy ani sprytni, ale których można wyszkolić do wykonywania powtarzalnych zadań, a zbiorowo mogą być bardziej produktywni tylko ze względu na samą liczbę osób.

      Nie chodzi o to, że procesor jest gruby, zepsuty lub leniwy. Zarówno procesory, jak i procesory graficzne są tworami stworzonymi z miliardów mikroskopijnych tranzystorów wciśniętych na mały kawałek krzemu. W przypadku chipów krzemowych rozmiar jest drogi. Struktury, które sprawiają, że procesory są dobre w tym, co robią, zajmują dużo miejsca. Pomijanie tych konstrukcji pozostawia dużo miejsca dla wielu „głupich ALU, które z osobna są bardzo małe.

      Jednostki ALU GPU są podzielone na grupy, a każda grupa jednostek ALU współdzieli zarządzanie, więc członkowie grupy nie mogą pracować nad oddzielnymi zadaniami. Mogą albo wszystkie pracować nad prawie identycznymi odmianami jednego zadania, w doskonałej synchronizacji ze sobą, lub wcale. Wielokrotne wypróbowywanie różnych skrótów – proces stojący za wydobywaniem bitcoinów – jest bardzo powtarzalnym zadaniem odpowiednim dla GPU, przy czym każda próba różni się tylko zmianą jednej liczby (zwanej „nonce) w zaszyfrowanych danych.

      ATI Radeon 5970 jest popularną kartą graficzną do wydobywania bitcoinów i do tej pory oferuje najbardziej znaną wydajność spośród wszystkich kart graficznych do tego celu.

      Ta konkretna karta ma 3200 procesorów strumieniowych, które można uznać za 3200 bardzo głupich jednostek wykonawczych, które można wyszkolić do wykonywania tego samego powtarzalnego zadania, o ile nie muszą podejmować żadnych decyzji, które zakłócają ich przepływ . Te jednostki wykonawcze są zawarte w blokach. 5970 wykorzystuje architekturę VLIW-5, co oznacza, że ​​3200 procesorów strumieniowych to w rzeczywistości 640 rdzeni, z których każdy może przetwarzać 5 instrukcji na cykl zegara. Nvidia nazwałaby te rdzenie „Cuda Cores, ale jak wspomniano w tym artykule, nie są one VLIW, co oznacza, że ​​nie mogą wykonywać tak dużej pracy na cykl. Z tego powodu porównywanie kart graficznych na podstawie samej liczby rdzeni nie jest dokładną metodą określania wydajności, a także dlatego nVidia pozostaje tak daleko w tyle za ATI pod względem mieszania SHA-256.

      Ponieważ ALU są tym, co wykonuje całą pracę wydobywania bitcoinów, liczba dostępnych jednostek ALU ma bezpośredni wpływ na wynik skrótu. Porównaj to z 4-rdzeniowym procesorem, który może przełączać zadania w mgnieniu oka, ale ma jednostki ALU w małej wielokrotności czterech, jeśli nie tylko czterech jednostek ALU. Wypróbowanie pojedynczego skrótu SHA256 w kontekście wydobywania bitcoinów wymaga około 1000 prostych kroków matematycznych, które muszą być wykonane w całości przez jednostki ALU.

      Krótko mówiąc, właśnie dlatego GPU mogą wydobywać Bitcoiny o wiele szybciej niż procesory. Wydobywanie bitcoinów nie wymaga podejmowania decyzji – jest to powtarzalna praca matematyczna dla komputera. Jedyne decyzje, jakie należy podjąć w przypadku wydobywania bitcoinów, to „czy mam ważny blok lub „czy nie. To doskonałe obciążenie do uruchomienia na GPU.

      Dlaczego procesory graficzne AMD są szybsze niż procesory graficzne Nvidia?

      Po pierwsze, AMD projektuje układy GPU z wieloma prostymi jednostkami ALU / shadery (konstrukcja VLIW), które działają przy stosunkowo niskiej częstotliwości (zwykle 1120-3200 jednostek ALU przy 625-900 MHz), podczas gdy mikroarchitektura Nvidii składa się z mniejszej liczby bardziej złożonych jednostek ALU i stara się to kompensować wyższy zegar modułu cieniującego (zwykle 448-1024 jednostek ALU przy 1150-1544 MHz). Z powodu tej różnicy między VLIW a VLIW, Nvidia zużywa więcej milimetrów kwadratowych przestrzeni na matrycę na jednostkę ALU, dlatego może upakować mniej ich na chip i uderzają w ścianę częstotliwości wcześniej niż AMD, co uniemożliwia im wystarczająco wysokie zwiększenie zegara dorównać lub przewyższać wydajność AMD. Przekłada się to na czystą przewagę wydajności ALU dla AMD:

      • AMD Radeon HD 6990: 3072 ALU x 830 MHz = 2550 miliardów 32-bitowych instrukcji na sekundę
      • Nvidia GTX 590: 1024 ALU x 1214 MHz = 1243 miliardy 32-bitowych instrukcji na sekundęTa przybliżona różnica w wydajności2x-3xwystępuje w całej gamie procesorów graficznych AMD i Nvidia. Jest to bardzo widoczne we wszystkich obciążeniach GPGPU związanych z ALU, takich jak Bitcoin, łamacze haseł itp.

        Po drugie, kolejną różnicą sprzyjającą wydobywaniu bitcoinów na procesorach graficznych AMD zamiast Nvidii jest to, że algorytm wydobywania oparty jest na SHA-256, co w dużym stopniu wykorzystuje operację rotacji w prawo z 32-bitową liczbą całkowitą. Ta operacja może być zaimplementowana jako pojedyncza instrukcja sprzętowa na procesorach graficznych AMD (BIT_ALIGN_INT), ale wymaga emulacji trzech oddzielnych instrukcji sprzętowych na procesorach graficznych Nvidia (2 zmiany + 1 dodanie).Jużsamo to daje AMD kolejną przewagę wydajności1,7x(

        1900 instrukcji zamiast

        3250, aby wykonać funkcję kompresji SHA-256).

        Połączone razem te 2 czynniki sprawiają, że procesory graficzne AMD są ogólnie3x-5xszybsze podczas wydobywania bitcoinów.

        NVIDIA wypuszcza NOWE Generacje kart GPU

        Nowa flagowa karta NVIDII „GeForce GTX 690 jest teraz mocniejsza niż jej młodszy brat – GTX 590. EVGA zdecydowała się również na użycie tego samego chipsetu w swojej flagowej karcie „EVGA GeForce GTX 690 Signature. Ale jakie są dane porównawcze dla AMD i nowych procesorów graficznych NVIDIA? Zobacz poniżej niektóre specyfikacje wydajności:


        GeForce GTX 690 (4096 MB):

        Zegar GPU (MHz) 915 (1019), GFLOPS 5621 Single Precision, Double Precision Figures niedostępne, ALU 3072 (producent nazywa to rdzeniami CUDA)


        AMD Radeon HD 6990:

        Zegar silnika 830 MHz, 5100 GFLOP z pojedynczą precyzją, 1270 GFLOP z podwójną precyzją, ALU 3072

We use cookies to provide you with the best possible experience. By continuing, we will assume that you agree to our cookie policy