NVIDIA CUDA 4.0 – łatwiejsze programowanie równoległe

Firma NVIDIA przedstawiła dziś najnowszą wersję zestawu narzędziowego NVIDIA® CUDA® Toolkit, przeznaczonego do tworzenia aplikacji wykorzystujących obliczenia równoległe na procesorach graficznych NVIDIA.
Zestaw narzędziowy NVIDIA CUDA 4.0 Toolkit został stworzony w celu ułatwienia programowania równoległego i zapewnienia możliwości przeniesienia aplikacji na procesory graficzne większej liczbie deweloperów. Dlatego głównymi cechami zestawu są:
- Technologia NVIDIA GPUDirect™ 2.0 – Obsługa wzajemnej, bezpośredniej komunikacji pomiędzy procesorami graficznymi pracującymi w obrębie jednego serwera lub jednej stacji roboczej. Dzięki temu programowanie aplikacji dla wielu procesorów graficznych staje się łatwiejsze, a wydajność aplikacji wzrasta.
- Funkcja jednolitego adresowania wirtualnego (UVA) – Możliwość stworzenia jednolitej, połączonej przestrzeni adresowej złożonej z pamięci głównej komputera i pamięci procesorów graficznych, w celu przyśpieszenia i ułatwienia programowania równoległego.
- Biblioteki szablonów wydajnych elementów podstawowych języka C++ Thrust – Kolekcja potężnych algorytmów obsługi obliczeń równoległych i struktur danych, wraz z otwartym kodem źródłowym, która ułatwia pracę programistów języka C++. Standardowe zadania (np. sortowanie równoległe) realizowane za pomocą bibliotek Thrust są od 5 do 100 razy szybsze w porównaniu ze standardowymi bibliotekami Standard Template Library (STL) lub bibliotekami Threading Building Blocks (TBB)
„Jednolite adresowanie wirtualne i szybsza komunikacja między procesorami graficznymi ułatwiają wykorzystywanie mocy przetwarzania równoległego procesorów graficznych,” twierdzi John Stone, Starszy programista naukowy na Uniwersytecie Illinois, Urbana-Champaign.
„Dostęp do funkcji obliczeń równoległych procesora równoległego znacznie zwiększa produktywność w szerokiej gamie zastosowań - od prostego generowania przepływów pieniężnych po złożone obliczenia modeli rynku Libor, zmiennych opłat rocznych i dostosowania CVA,” twierdzi Peter Decrem, dyrektor działu ds. obliczeń stawek w firmie Quantify. „Obsługa niskopoziomowych funkcji zapewniona przez bibliotekę C++ Thrust, takich jak np. dostęp do pamięci czy alokacja pamięci, znacznie ułatwia rozpoczęcie pracy. Dzięki temu inżynier algorytmów finansowych może skoncentrować się nad rozwojem algorytmów w środowisku przyśpieszanym przez procesory graficzne”
Architektura CUDA 4.0 cechuje się ponadto szeregiem innych funkcji i możliwości, w tym:
- Integracja MPI z aplikacjami CUDA – Dzięki tej funkcji, wywołania wysyłki lub odebrania MPI aplikacji są obsługiwane przez modyfikowane wersje interfejsu MPI (np. OpenMPI), które automatycznie przenoszą dane z i do pamięci procesora graficznego poprzez Infiniband.
- Współdzielenie procesorów graficznych między wieloma wątkami – Możliwość współdzielenia kontekstów jednego procesora graficznego przez wiele wątków procesora centralnego komputera ułatwia współdzielenie procesora graficznego przy programowaniu aplikacji wielowątkowych.
- Dostęp do wielu procesorów dla jednego wątku procesora centralnego – Możliwość zapewnienia dostępu do wątków we wszystkich procesorach graficznych komputera dla jednego wątku procesora centralnego. Programiści korzystający z tej funkcji mogą z łatwością koordynować pracę na wielu procesorach graficznych, np. przy realizacji wymiany „halo” w aplikacjach.
- Nowa biblioteka obrazu i wizualizacji komputerowej NPP – Bogaty zestaw operacji do transformowania obrazu, który umożliwia rozwój aplikacji wizualizacji komputerowej i obsługi obrazu.
- Nowe i usprawnione możliwości
- Automatyczna analiza wydajności w aplikacji Visual Profiler
- Nowe funkcje cuda-gdb i obsługa systemu MacOS
- Dodana obsługa operatorów języka C++, np. new/delete i funkcji wirtualnych
- Nowy deasembler binarny dla procesorów graficznych
Wersja „Release Candidate” zestawu narzędziowego CUDA Toolkit 4.0 zostanie udostępniona bezpłatnie z dniem 4 marca 2011 r. Aby uzyskać do niej dostęp, należy zarejestrować się w programie CUDA Registered Developer pod adresem: www.nvidia.com/paralleldeveloper. W ramach programu CUDA Registered Developer można uzyskać dostęp do bogatego zbioru narzędzi, zasobów i informacji dla programistów aplikacji równoległych, który umożliwia jak najpełniejsze wykorzystanie potencjału architektury CUDA.
Więcej informacji na temat funkcji i możliwości zestawu narzędziowego CUDA i aplikacji na graficznych procesorach obliczeniowych można znaleźć pod adresem: www.nvidia.com/cuda.

4132
0
Poprzedni
0
Komentarze