Articles

GPU vs CPU Computing: co wybrać?

Olena
Olena

Follow
8 lutego 2018 · 4 min odczytu

procesory i GPU mają wiele wspólnego. Oba są mikroprocesorami na bazie krzemu. Jednocześnie są one zasadniczo różne i są wdrażane do różnych ról.

czym są procesory i GPU?

procesor (jednostka centralna) jest często nazywany „mózgiem” lub „sercem” komputera. Wymagane jest uruchomienie większości oprogramowania inżynieryjnego i biurowego. Istnieje jednak wiele zadań, które mogą przytłoczyć centralny procesor komputera. To jest, gdy korzystanie z GPU staje się niezbędne do obliczeń.

GPU (graphics processing unit) to wyspecjalizowany Typ mikroprocesora, przeznaczony głównie do szybkiego renderowania obrazów. Procesory graficzne pojawiły się jako odpowiedź na intensywne graficznie aplikacje, które obciążają procesor i obniżają wydajność komputera. Stały się sposobem na odciążenie tych zadań z procesorów, ale nowoczesne procesory graficzne są wystarczająco potężne, aby wykonywać szybkie obliczenia matematyczne do wielu innych celów oprócz renderowania.

jaka jest różnica?

procesory i GPU przetwarzają zadania na różne sposoby. Jeśli chodzi o wzajemne powiązania, są one często porównywane z mózgiem i mięśni. Procesor (mózg) może pracować nad różnymi obliczeniami, podczas gdy GPU (brawn) najlepiej koncentruje wszystkie zdolności obliczeniowe na konkretnym zadaniu. Dzieje się tak dlatego, że procesor składa się z kilku rdzeni (do 24) zoptymalizowanych do sekwencyjnego przetwarzania szeregowego. Został zaprojektowany, aby zmaksymalizować wydajność pojedynczego zadania w ramach zadania; jednak zakres zadań jest szeroki. Z drugiej strony, GPU wykorzystuje tysiące mniejszych i bardziej wydajnych rdzeni dla masywnie równoległej architektury mającej na celu obsługę wielu funkcji w tym samym czasie.

nowoczesne układy GPU zapewniają doskonałą moc obliczeniową, przepustowość pamięci i wydajność w stosunku do swoich odpowiedników CPU. Są one 50-100 razy szybsze w zadaniach wymagających wielu równoległych procesów, takich jak uczenie maszynowe i analiza big data.

źródło: blogs.nvidia.com

jakie problemy mają układy GPU?

przetwarzanie GPU jest definiowane jako wykorzystanie GPU wraz z procesorem w celu przyspieszenia zastosowań naukowych, analitycznych, inżynieryjnych, konsumenckich i korporacyjnych.

od wielu lat procesory graficzne zasilają wyświetlanie obrazów i ruchu na wyświetlaczach komputerowych, ale są technicznie zdolne do zrobienia więcej. Procesory graficzne są wprowadzane do gry, gdy potrzebne są ogromne obliczenia w jednym zadaniu.

to zadanie może obejmować:

  • gry

procesor graficzny jest niezbędny do szybkiego, intensywnego graficznie renderowania świata gier. Renderowanie efektów specjalnych i wyrafinowanej grafiki 3D w czasie rzeczywistym wymaga sporej mocy obliczeniowej. Zadania nowoczesnych gier stają się zbyt ciężkie dla rozwiązania graficznego procesora. Gry posunęły się nawet o krok dalej dzięki wirtualnej rzeczywistości, która jest tak wiarygodna, ponieważ układy GPU mogą szybko renderować i utrzymywać realistyczne obrazy z odpowiednim oświetleniem i cieniowaniem.

  • wizualizacja 3D

wydajność napędu GPU w aplikacjach wizualizacyjnych 3D, takich jak projektowanie wspomagane komputerowo (CAD). Oprogramowanie umożliwiające wizualizację obiektów w trzech wymiarach polega na procesorach GPU, które rysują te modele w czasie rzeczywistym podczas ich obracania lub przesuwania.

  • przetwarzanie obrazów

procesory GPU mogą dokładnie przetwarzać miliony obrazów, aby znaleźć różnice i podobieństwa. Ta zdolność jest szeroko stosowana w branżach takich jak kontrola graniczna, Bezpieczeństwo i medyczne przetwarzanie rentgenowskie. Na przykład w 2010 roku wojsko amerykańskie połączyło ponad 1700 Systemów Sony PlayStation 3TM, aby szybciej przetwarzać obrazy satelitarne o wysokiej rozdzielczości.

  • Big Data

dzięki tysiącom rdzeni obliczeniowych i przepustowości aplikacji 10–100x w porównaniu z samymi procesorami, jednostki graficzne są wyborem do przetwarzania dużych zbiorów danych dla naukowców i przemysłu. Układy GPU są używane do przedstawiania danych jako interaktywna wizualizacja i integrują się z innymi zestawami danych w celu zbadania objętości i prędkości danych. Na przykład, jesteśmy teraz w stanie wzmocnić mapowanie genów poprzez przetwarzanie danych i analizowanie Ko-wariancji w celu zrozumienia zależności między różnymi kombinacjami genów.

  • głębokie uczenie maszynowe

Uczenie maszynowe istnieje już od jakiegoś czasu, ale wydajne i wydajne przetwarzanie GPU podniosło je na nowy poziom. Deep learning to wykorzystanie zaawansowanych sieci neuronowych do tworzenia systemów, które mogą wykrywać funkcje na podstawie ogromnych ilości nieoznakowanych danych treningowych. Procesory GPU mogą przetwarzać mnóstwo danych treningowych i trenować sieci neuronowe w obszarach takich jak analiza obrazu i wideo, Rozpoznawanie mowy i przetwarzanie języka naturalnego, samochody samojezdne, widzenie komputerowe i wiele innych.

GPU nie są zamiennikami dla architektury procesora. Są raczej potężnymi akceleratorami dla istniejącej infrastruktury. Przetwarzanie z akceleracją GPU przenosi intensywne obliczeniowo części aplikacji na GPU,podczas gdy pozostała część kodu nadal działa na procesorze. Z punktu widzenia użytkownika aplikacje działają znacznie szybciej. Podczas gdy komputery ogólnego przeznaczenia nadal są domeną CPU, GPU są szkieletem sprzętowym prawie wszystkich intensywnych aplikacji obliczeniowych.