Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.


20.10.2017

Złote dyski WD

WD GOLD 12 TB
17.10.2017

Ultrapanorama

Philips 492P8
13.10.2017

Druk w bieli

Oki Pro8342WT
11.10.2017

PolCAAT’ 2017 już w...

30 listopada 2017 r. w warszawskim hotelu Marriott odbędzie się XIII edycja konferencji...
10.10.2017

Pełna ochrona

Kaspersky Total Security 2018, Internet Security 2018
06.10.2017

Przeprowadzka do chmury

Oracle Exadata Cloud
03.10.2017

Automatyzacja...

Red Hat Ansible
02.10.2017

Bezpieczeństwo danych zaczyna...

Aby zapewnić bezpieczeństwo danych, w tym informacji poufnych o klientach i pracownikach,...
27.09.2017

Dotykowe 75 cali

BenQ RP750K

Przetwarzanie danych przy użyciu procesorów graficznych

Data publikacji: 25-05-2017 Autor: Marcin Szeliga
Autor: Rys. K. Kanoniak

General-Purpose Computing on Graphics Processing Units (GPGPU) to dziedzina, która, choć już niemłoda, dziś, w dobie powszechnej dostępności coraz wydajniejszych akceleratorów, nabiera większego znaczenia. Przedstawiamy możliwości architektury CUDA pozwalającej na wydajne rozwiązywanie skomplikowanych zadań numerycznych w zakresie generowania, przetwarzania i rozpoznawania obrazów, a także sieci neuronowych i uczenia maszynowego.

Komputer pokładowy programu Apollo (AGC), który w 1969 roku sterował lotem na Księżyc, lądowaniem i powrotem Apollo 11 na Ziemię, był wyposażony w dwa identyczne moduły, sercem każdego z nich był 2-bajtowowy procesor będący w stanie wykonać około 50 tysięcy operacji zmiennoprzecinkowych na sekundę (50 KFLOPS).

Dzisiaj, niecałe 50 lat później, smartfon z górnej półki wyposażony jest w procesory zdolne wykonać około miliarda operacji zmiennoprzecinkowych na sekundę (1 GFLOPS), czyli jest 20 tysięcy razy szybszy od komputera AGC. Natomiast współczesne superkomputery już w 2008 roku osiągnęły wydajność przekraczającą biliard operacji zmiennoprzecinkowych na sekundę, a aktualny rekordzista, chiński Sunway TaihuLight, dysponuje mocą obliczeniową 93 PFLOPS pozwalającą mu na wykonywanie 93 biliardów operacji zmiennoprzecinkowych na sekundę, czyli jest prawie 2 biliony razy szybszy od komputera AGC.

Tak spektakularny wzrost mocy obliczeniowej zawdzięczamy nie tylko miniaturyzacji układów scalonych, ale również nowym architekturom procesorów. Celem artykułu jest przedstawienie architektury GPGPU (General-Purpose Computing on Graphics Processing Units) pozwalającej przetwarzać dane przy użyciu procesorów graficznych oraz najczęstszych zastosowań tej architektury.

> Karty graficzne i przetwarzanie potokowe

Oryginalnym zadaniem kart graficznych było przyśpieszenie (akceleracja) wyświetlania grafiki 3D. Ponieważ wyświetlane na monitorach obrazy składają się z ciągów liczb (wektorów), karty zostały wyposażone w proste moduły obliczeniowe, których możliwości sprowadzały się do wykonywania ograniczonej liczby operacji na wielu wektorach jednocześnie. Innymi słowy, karty graficzne umożliwiały, tak jak komputery typu mainframe z lat 70. XX wieku, przetwarzanie potokowe.

W 1999 roku firma NVidia wprowadziła na rynek pierwszy procesor graficzny GPU, który dodatkowo pozwalał na wykonywanie obliczeń niezwiązanych z wyświetlaniem obrazów. Od tego czasu firmy takie jak Sony, ATI, NVidia, Intel i AMD opracowują kolejne metody poprawy wydajności komputerów czy konsoli poprzez przeniesienie wykonania coraz bardziej skomplikowanych, ale powtarzalnych instrukcji (mowa tu o instrukcjach klasy SIMD – Single Instruction Multiple Data) z procesora głównego (CPU) na procesory graficzne (GPU).

Przewagą GPU nad CPU jest ich równoległa architektura pozwalająca na wykonywanie w ciągu sekundy wielokrotnie (tysiące razy) większej liczby instrukcji SIMD. Jednostka CPU składa się z kilku rdzeni zoptymalizowanych pod kątem sekwencyjnego przetwarzania szeregowego, natomiast masowo równoległa architektura jednostki GPU składa się z tysięcy prostszych, ale bardziej efektywnych rdzeni, zaprojektowanych z myślą o przetwarzaniu wielu zadań jednocześnie. Wprowadzone w 2007 roku akceleratory GPU początkowo były używane w superkomputerach i centrach danych, dziś stosuje się je również w komputerach domowych do grania, ale także w specjalistycznych urządzeniach, np. modułach odpowiadających za rozpoznawanie obrazu przez pojazdy autonomiczne.

[...]

Autor od 20 lat zawodowo pracuje z danymi i posiada tytuł Microsoft Most Valuable Professional.

Artykuł pochodzi z miesięcznika: IT Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2013 Presscom / Miesięcznik "IT Professional"