Gadżety

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

przeczytasz w 3 min.

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. Głównymi cechami zestawu są:

Warto przeczytać:
Nowe mobilne układy NVIDIA Quadro
 Znamy datę konferencji GTC 2011
 Intelowska Mekka dla graczy na CeBIT 2011
  • 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. 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. 

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.

Źródło: NVIDIA

Polecamy artykuły:  
Dell Alienware M17x - marzenie gracza z CrossFireX
Razer Spectre, Marauder i Banshee - mysz, klawiatura i słuchawki z serii StarCraft II
VoD Onet, Ipla, tvscreen i spółka - przegląd 7 serwisów 

Komentarze

27
Zaloguj się, aby skomentować
avatar
Komentowanie dostępne jest tylko dla zarejestrowanych użytkowników serwisu.
  • avatar
    Szymon331
    0
    A w renderingu filmu CUDA jak nie pomagało tak nie pomaga eh.
    • avatar
      Warmonger
      0
      To bardzo, bardzo dobre wiadomości, bo zamierzam czynić CUDA na inżynierce }:]
      • avatar
        Konto usunięte
        0
        kolejne bezdyskusyjne zwycięstwo Nvidii nad resztą konkurencji której nawet ostatnio nie ma
        • avatar
          hideo
          0
          cuda jest dobra ale w kartach quadro ewentualnie gtx470 i lepszych
          • avatar
            Konto usunięte
            0
            Moim zdaniem nVidia robi duzo wiecej zeby ulatwic programistom wykorzastanie ich kart.
            W przypadku AMD mamy tu jakby konflikt interesow - produkuja zarowno CPU jak i GPU, wiec jakby mniej im zalezy na zmniejszaniu roli CPU poprzez wykorzystanie GPU...

            Tak czy inaczej - nawet w przypadku bardzo sredniej obecnie karty typu 9800GTX/GTS250 mozemy zyskac.
            Np konwertujac film w Mediacoder (porownanie Q9550@4,0GHz, 9800GTX+ i GTS 580 na tym samym filmie oczywiscie):
            -CPU - x4 - (czyli okolo 100kl/sek)
            -9800GTX+ - x6 (okolo 150kl/sek)
            -GTX580 - x16 (400kl/sek)

            Jak ktos ma procek dwurdzeniowy, to nawet 9800GTX da wymierne przyspieszenie.