Obszar nazw współbieżności (C++ AMP)
Przestrzeń nazw Concurrency dostarcza klasy i funkcje, które przyspieszają wykonywanie kodu C++ na urządzeniach równoległych danych.Aby uzyskać więcej informacji, zobacz Omówienie AMP C++
namespace Concurrency;
Elementy członkowskie
Przestrzenie nazw
Nazwa |
Opis |
---|---|
Przestrzeń nazw direct3d dostarcza funkcje, które obsługują współdziałanie D3D.To umożliwia bezproblemowe korzystanie z zasobów D3D dla obliczeń w kodzie AMP i umożliwia użycie zasobów utworzonych w AMP w kodzie D3D bez tworzenia nadmiarowych kopii pośrednich.Można stopniowo przyspieszyć sekcje intensywnych obliczeń aplikacji DirectX za pomocą C++ AMP i użyć interfejsu API D3D na danych wyprodukowanych z obliczeń AMP. |
|
Przestrzeń nazw graphics zawiera typy i funkcje, które są przeznaczone do programowania grafiki. |
Klasy
Nazwa |
Opis |
---|---|
Reprezentuje abstrakcję fizycznego węzła obliczeniowego zoptymalizowanego pod kątem DP. |
|
Reprezentuje abstrakcję urządzenia wirtualnego na akceleratorze danych równoległych C++ AMP. |
|
Tablica jest agregacją danych na accelerator_view w domenie siatki.Jest to zbiór zmiennych, jedna dla każdego elementu w domenie siatki.Każda zmienna przechowuje wartość odpowiadającą pewnemu typowi C++. |
|
Reprezentuje widok danych w tablicy <T,N>. |
|
Reprezentuje wektor N wartości całkowitych, które określają granice przestrzeni N-wymiarowej, która pochodzi od 0.Wartości w wektorze współrzędnych są uporządkowane w kolejności od najbardziej znaczących do najmniej znaczących.Na przykład w kartezjańskiej, trójwymiarowej przestrzeni wektor zakresu (7,5,3) reprezentuje przestrzeń, w której współrzędna z jest z zakresu od 0 do 7, współrzędna y z zakresu od 0 do 5, a współrzędna x jest z zakresu od 0 do 3. |
|
Definiuje N-wymiarowy punkt indeksu |
|
Zgłaszany wyjątek, gdy środowisko uruchomieniowe nie może uruchomić jądra używając domeny obliczeniowej określonej w wywołaniu witryny parallel_for_each. |
|
Wyjątek, który jest zgłaszany, gdy metoda nie powiedzie się z powodu braku pamięci systemowej lub urządzenia. |
|
Typ podstawowy dla wyjątków w bibliotece C++ Accelerated Massive Parallelism (AMP). |
|
Klasa tile_barrier jest klasą zdolności, która jest może zostać stworzona tylko przez system i jest przekazywana do wyrażenia lambda fragmentu parallel_for_each jako część parametru tiled_index.Udostępnia pojedynczą metodę wait(), której celem jest synchronizowanie wykonywania wątków działających w grupie wątku (fragmencie). |
|
Dostarcza indeks do obiektu tiled_grid.Ta klasa posiada właściwości, które umożliwiają dostęp do elementu pozycjonowanego względnie w stosunku do pozycji lokalnego fragmentu i pozycjonowanego względnie w stosunku do pozycji globalnej. |
|
Wyjątek ten jest zgłaszany, gdy używany jest obiekt niezainicjowany. |
|
Wyjątek ten jest zgłaszany, gdy używana jest nieobsługiwana funkcja. |
Wyliczenia
Nazwa |
Opis |
---|---|
Określa tryby kolejkowania, które są obsługiwane w akceleratorze. |
Funkcje
Nazwa |
Opis |
---|---|
Blokuje wykonanie wszystkich wątków we fragmencie do momentu zakończenia wszystkich operacji dostępu do pamięci |
|
Przeciążone.Wykonuje atomową operację porównaj-i-wymień _Value do lokalizacji pamięci wskazywanej przez _Dest Porównuje _Compare_value z wartością lokalizacji pamięci wskazywanej przez _Dest.Jeśli są takie same zachowuje _Value w lokalizacji pamięci. |
|
Przeciążone.Ustawia wartość lokalizacji wskazywanej przez _Dest na _Value jako operację atomową. |
|
Przeciążone.Wykonuje operację atomowego dodania wartości _Value do lokalizacji pamięci wskazywanej przez _Dest. |
|
Przeciążone.Wykonuje atomową operację bitową wartości _Value do lokalizacji pamięci wskazywanej przez _Dest. |
|
Przeciążone.Wykonuje atomową operację zmniejszania w lokalizacji pamięci wskazywanej przez _Dest. |
|
Przeciążone.Wykonuje atomową operację zwiększania w lokalizacji pamięci wskazywanej przez _Dest. |
|
Przeciążone.Atomowo oblicza maksymalną wartość _Value i wartość lokalizacji pamięci wskazywanej przez _Dest i zachowuje maksymalną wartość w lokalizacji pamięci. |
|
Przeciążone.Atomowo oblicza minimalną wartość _Value i wartość lokalizacji pamięci wskazywanej przez _Dest i zachowuje minimalną wartość w lokalizacji pamięci. |
|
Przeciążone.Wykonuje atomową operację logiczną LUB wartości _Value na lokalizacji pamięci wskazywanej przez _Dest. |
|
Przeciążone.Wykonuje atomową operację odejmowania wartości _Value od lokalizacji pamięci wskazywanej przez _Dest. |
|
Przeciążone.Wykonuje atomową operację logiczną xor wartości _Value na lokalizacji pamięci wskazywanej przez _Dest. |
|
Kopiuje obiekt C++ AMP.Spełnione są wszystkie wymagania synchronicznego transferu danych.Nie można skopiować danych, podczas uruchamiania kodu na akceleratorze.Ogólna postać tej funkcji to copy(src, dest). |
|
Kopiuje obiekt C++ AMP i zwraca future<void> , który może być oczekiwany.Nie można skopiować danych, podczas uruchamiania kodu na akceleratorze.Ogólna postać tej funkcji to copy(src, dest). |
|
Uruchamia funkcję w całej domenie obliczeń. |
Stałe
Nazwa |
Opis |
---|---|
Maksymalna liczba buforów dozwolona, przez DirectX. |
|
Przechowuje maksymalną długość nazwy modułu.Ta wartość musi być taka sama w kompilatorze i środowisku uruchomieniowym. |
Wymagania
Nagłówek: amp.h