Dlaczego nadal używamy procesorów zamiast GPU?

Nov 6, 2024
Sprzęt komputerowy

Coraz częściej procesory graficzne są wykorzystywane do zadań innych niż graficzne, takich jak obliczenia ryzyka, obliczenia dynamiki płynów i analizy sejsmiczne. Co nas powstrzymuje przed wprowadzeniem urządzeń opartych na GPU?

Dzisiejsza sesja pytań i odpowiedzi jest dostępna dzięki uprzejmości SuperUser - części Stack Exchange, grupy witryn z pytaniami i odpowiedziami, prowadzonej przez społeczność.

Pytanie

Czytnik SuperUser Ell śledzi nowinki techniczne i jest ciekawy, dlaczego nie używamy więcej systemów opartych na procesorach graficznych:

Wydaje mi się, że w dzisiejszych czasach wiele obliczeń wykonuje się na GPU. Oczywiście grafika jest tam robiona, ale przy użyciu CUDA i tym podobnych, sztucznej inteligencji, algorytmów haszujących (pomyśl o Bitcoinach) i innych również na GPU. Dlaczego nie możemy po prostu pozbyć się procesora i używać samego GPU? Co sprawia, że ​​GPU jest dużo szybsze niż CPU?

Rzeczywiście, dlaczego? Co sprawia, że ​​procesor jest wyjątkowy?

Odpowiedź

Współautor SuperUser DragonLord oferuje dobrze obsługiwany przegląd różnic między procesorami graficznymi i procesorami:

Odpowiedź TL; DR: Procesory graficzne mają znacznie więcej rdzeni procesorów niż procesory CPU, ale ponieważ każdy rdzeń GPU działa znacznie wolniej niż rdzeń procesora i nie ma funkcji potrzebnych w nowoczesnych systemach operacyjnych, nie są one odpowiednie do wykonywania większości przetwarzania w codziennych komputerach. Najbardziej nadają się do operacji wymagających dużej mocy obliczeniowej, takich jak przetwarzanie wideo i symulacje fizyczne.

Szczegółowa odpowiedź: GPGPU to wciąż stosunkowo nowa koncepcja. Procesory GPU były początkowo używane tylko do renderowania grafiki; w miarę rozwoju technologii duża liczba rdzeni w procesorach graficznych w porównaniu z procesorami została wykorzystana do opracowania możliwości obliczeniowych dla procesorów graficznych, aby mogły one przetwarzać wiele równoległych strumieni danych jednocześnie, niezależnie od tego, jakie to dane. Chociaż procesory graficzne mogą mieć setki, a nawet tysiące procesorów strumieniowych, każdy z nich działa wolniej niż rdzeń procesora i ma mniej funkcji (nawet jeśli są Turing zakończony i może być zaprogramowany do uruchamiania dowolnego programu, który może uruchomić CPU). Funkcje, których brakuje w GPU, obejmują przerwania i pamięć wirtualną, które są wymagane do wdrożenia nowoczesnego systemu operacyjnego.

Innymi słowy, procesory i procesory graficzne mają znacząco różne architektury, dzięki czemu są lepiej przystosowane do różnych zadań. Procesor GPU może obsługiwać duże ilości danych w wielu strumieniach, wykonując na nich stosunkowo proste operacje, ale nie jest przystosowany do intensywnego lub złożonego przetwarzania pojedynczego lub kilku strumieni danych. Procesor jest znacznie szybszy w przeliczeniu na rdzeń (pod względem instrukcji na sekundę) i może łatwiej wykonywać złożone operacje na jednym lub kilku strumieniach danych, ale nie może wydajnie obsługiwać wielu strumieni jednocześnie.

W rezultacie GPU nie są przystosowane do obsługi zadań, które nie odnoszą znaczących korzyści lub nie mogą być zrównoleglone, w tym wielu typowych aplikacji konsumenckich, takich jak procesory tekstu. Co więcej, procesory graficzne wykorzystują zasadniczo inną architekturę; należałoby zaprogramować aplikację specjalnie dla GPU, aby działała, a do programowania procesorów graficznych wymagane są znacznie inne techniki. Te różne techniki obejmują nowe języki programowania, modyfikacje istniejących języków i nowe paradygmaty programowania, które są lepiej dostosowane do wyrażania obliczeń jako operacji równoległej do wykonania przez wiele procesorów strumieniowych. Więcej informacji na temat technik potrzebnych do programowania procesorów graficznych można znaleźć w artykułach Wikipedii pod adresem przetwarzanie strumieniowe i Równoległe obliczenia .

Nowoczesne procesory graficzne są zdolne do wykonywania operacji wektorowych i arytmetyki zmiennoprzecinkowej, a najnowsze karty są w stanie manipulować liczbami zmiennoprzecinkowymi o podwójnej precyzji. Struktury takie jak CUDA i OpenCL umożliwiają pisanie programów dla procesorów graficznych, a natura procesorów graficznych sprawia, że ​​są one najlepiej przystosowane do wysoce równoległych operacji, takich jak obliczenia naukowe, w których seria wyspecjalizowanych kart obliczeniowych GPU może być realnym zamiennikiem małego oblicz klaster jak w Osobiste superkomputery NVIDIA Tesla . Konsumenci z nowoczesnymi procesorami graficznymi, którzy mają doświadczenie w pracy z Folding @ home, mogą z nich korzystać Klienci GPU , który może wykonywać symulacje zwijania białek z bardzo dużą prędkością i wnieść więcej pracy do projektu (koniecznie przeczytaj FAQs po pierwsze, zwłaszcza te związane z procesorami graficznymi). Układy GPU mogą również umożliwić lepszą symulację fizyki w grach wideo przy użyciu technologii PhysX, przyspieszyć kodowanie i dekodowanie wideo oraz wykonywać inne zadania wymagające dużej mocy obliczeniowej. Do tego typu zadań najlepiej nadają się układy GPU.

AMD jest pionierem w konstrukcji procesora o nazwie Przyspieszona jednostka przetwarzania (APU) który łączy konwencjonalne rdzenie procesorów x86 z procesorami graficznymi. Mogłoby to pozwolić komponentom CPU i GPU na współpracę i poprawę wydajności w systemach z ograniczoną przestrzenią na oddzielne komponenty. Wraz z postępem technologicznym będziemy obserwować coraz większy stopień zbieżności tych niegdyś oddzielnych części. Jednak wiele zadań wykonywanych przez systemy operacyjne i aplikacje komputerów osobistych jest nadal lepiej dostosowanych do procesorów i potrzeba dużo pracy, aby przyspieszyć program za pomocą GPU. Ponieważ tak wiele istniejącego oprogramowania korzysta z architektury x86, a procesory graficzne wymagają różnych technik programowania i brakuje im kilku ważnych funkcji potrzebnych w systemach operacyjnych, ogólne przejście z procesora na procesor graficzny do codziennych zastosowań jest niezwykle trudne.


Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych zaawansowanych technicznie użytkowników Stack Exchange? Sprawdź cały wątek dyskusji tutaj .

Why Are We Still Using CPUs Instead Of GPUs? (15 Solutions!!)

Why Do CPUs Need Caches? - Computerphile

How Intel And AMD Are Using 'chiplets' To Build Next-gen CPUs | Upscaled

GPUs: Explained


Sprzęt komputerowy - Najpopularniejsze artykuły

Czy należy używać adaptera obiektywu z aparatem bezlusterkowym?

Sprzęt komputerowy Sep 3, 2025

TREŚĆ NIENARUSZONA Kanon Aparaty bezlusterkowe nie są przyszłością, są teraźniejszością . Jeśli jednak przechodzisz z..


Czy teraz jest dobry moment na zakup nowej karty graficznej NVIDIA lub AMD?

Sprzęt komputerowy Jan 23, 2025

TREŚĆ NIENARUSZONA Kilka lat temu ludzie przewidywali śmierć gier komputerowych, jakie znamy. Ci ludzie ucztują na obfitości skromnego ciasta, ponieważ gry na PC pozostają..


PSA: zaktualizuj konsole do gier przed przekazaniem ich na święta

Sprzęt komputerowy Dec 9, 2024

TREŚĆ NIENARUSZONA Ostatnią rzeczą, jakiej pragniesz w Boże Narodzenie, jest to, aby Twoje dzieci nie mogły grać na konsoli do gier, na którą tak długo czekały. Czytaj ..


Jak zbudować własny komputer, część czwarta: instalacja systemu Windows i ładowanie sterowników

Sprzęt komputerowy Dec 14, 2024

TREŚĆ NIENARUSZONA Podobnie jak konfigurowanie systemu BIOS , instalowanie nowej kopii systemu Windows było kiedyś trochę uciążliwe, ale obecnie jest niezwyk..


Co to jest pamięć i pamięć masowa 3D NAND?

Sprzęt komputerowy Jul 11, 2025

TREŚĆ NIENARUSZONA Pamięć flash (podobnie jak dyski SSD) jest obecnie wściekła na komputerach PC. I chociaż proces nie przebiega tak szybko, jak moglibyśmy mieć nadzieję..


Najlepsze aplikacje na Androida, których powinieneś używać na swoim Chromebooku

Sprzęt komputerowy Jul 3, 2025

TREŚĆ NIENARUSZONA Jeśli masz szczęście, że masz nowoczesnego Chromebooka, na którym można uruchomić aplikacje na Androida, zdecydowanie powinieneś skorzystać z tej nie..


Co to jest przysłona?

Sprzęt komputerowy Mar 30, 2025

W fotografii przysłona to otwór w obiektywie, który wpuszcza światło do aparatu. ZWIĄZANE Z: Co to jest czas otwarcia migawki? ..


Jak kontrolować swoje urządzenie z Androidem z komputera za pomocą AirDroid

Sprzęt komputerowy Jul 12, 2025

TREŚĆ NIENARUSZONA AirDroid na Androida zastępuje kabel USB do połączenia z komputerem. Przesyłaj pliki tam iz powrotem, wysyłaj wiadomości tekstowe, odtwarzaj muzykę, pr..


Kategorie