Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
C++ kodunun veri paralel donanımda yürütülmesini hızlandıran sınıflar ve işlevler sağlar. Daha fazla bilgi için bkz. C++ AMP'ye Genel Bakış
Sözdizimi
namespace Concurrency;
Üyeler
Ad alanları
| Veri Akışı Adı | Açıklama |
|---|---|
| Concurrency::direct3d Ad Alanı | D3D birlikte çalışabilirliğini destekleyen işlevler sağlar. Yedekli ara kopyalar oluşturmadan, AMP kodunda işlem için D3D kaynaklarının sorunsuz bir şekilde kullanılmasını ve D3D kodunda AMP'de oluşturulan kaynakların kullanılmasını sağlar. DirectX uygulamalarınızın işlem yoğunluklu bölümlerini artımlı olarak hızlandırmak için C++ AMP kullanabilir ve AMP hesaplamalarından üretilen verilerde D3D API'sini kullanabilirsiniz. |
| Concurrency::fast_math Ad Alanı | Ad alanı işlevleri fast_math C99 uyumlu değildir. Her işlevin yalnızca tek duyarlıklı sürümleri sağlanır. Bu işlevler, ad alanında karşılık gelen işlevlerden daha hızlı olan ve hızlandırıcıda precise_math genişletilmiş çift duyarlık desteği gerektirmeyen DirectX iç işlevlerini kullanır, ancak daha az doğru olur. C99 koduyla kaynak düzeyinde uyumluluk için her işlevin iki sürümü vardır; her iki sürüm de tek duyarlıklı değerler alır ve döndürür. |
| Concurrency::graphics Ad Alanı | Grafik programlama için tasarlanmış türler ve işlevler sağlar. |
| Concurrency::precise_math Ad Alanı | Ad alanı işlevleri precise_math C99 uyumlu. Her işlevin hem tek duyarlıklı hem de çift duyarlıklı sürümleri dahil edilir. Bu işlevler (bu, tek duyarlıklı işlevleri içerir) hızlandırıcıda genişletilmiş çift duyarlık desteği gerektirir. |
Sınıflar
| Veri Akışı Adı | Açıklama |
|---|---|
| accelerator Sınıfı | Fiziksel DP için iyileştirilmiş işlem düğümünün özetini temsil eder. |
| accelerator_view Sınıfı | C++ AMP veri paralel hızlandırıcısı üzerindeki sanal cihaz soyutlama değerini temsil eder. |
| accelerator_view_removed Sınıfı | Temel alınan bir DirectX çağrısı Windows zaman aşımı algılama ve kurtarma mekanizması nedeniyle başarısız olduğunda oluşan özel durum. |
| array Sınıfı | Kılavuz etki alanındaki bir accelerator_view üzerinde veri toplama. Bir kılavuz etki alanındaki her öğe için bir tane olmak üzere bir değişken koleksiyonudur. Her değişken, bir C++ türüne karşılık gelen bir değere sahiptir. |
| array_view Sınıfı | T,N> dizisindeki<verilerin görünümünü temsil eder. |
| completion_future Sınıfı | C++ AMP zaman uyumsuz işlemine karşılık gelen bir geleceği temsil eder. |
| extent Sınıfı | 0 çıkış noktası olan N boyutlu bir boşluğun sınırlarını belirten N tamsayı değerlerinin vektörlerini temsil eder. Koordinat vektördeki değerler en önemliden en az önemliye doğru sıralanır. Örneğin Kartezyen 3 boyutlu uzayda, kapsam vektör (7,5,3), z koordinatı 0 ile 7 arasında, y koordinatı 0 ile 5 arasında ve x koordinatı 0 ile 3 arasında değişen bir alanı temsil eder. |
| index Sınıfı | N boyutlu bir dizin noktası tanımlar. |
| invalid_compute_domain Sınıfı | Çalışma zamanı çağrı sitesinde belirtilen parallel_for_each işlem etki alanını kullanarak bir çekirdeği başlatamayınca oluşan özel durum. |
| out_of_memory Sınıfı | Sistem veya cihaz belleği eksikliği nedeniyle bir yöntem başarısız olduğunda oluşan özel durum. |
| runtime_exception Sınıfı | C++ AMP kitaplığındaki özel durumlar için temel tür. |
| tile_barrier Sınıfı | Yalnızca sistem tarafından oluşturabilen ve parametresinin tiled_index bir parçası olarak kutucuklu parallel_for_each lambdaya geçirilen bir yetenek sınıfı. Amacı iş wait()parçacığı grubunda (kutucuk) çalışan iş parçacıklarının yürütülmesini eşitlemek olan tek bir yöntem sağlar. |
| tiled_extent Sınıfı | tiled_extent Nesne, kapsam alanını tek boyutlu, iki boyutlu veya üç boyutlu kutucuklara bölen bir-üç boyutlu bir extent nesnedir. |
| tiled_index Sınıfı | Bir nesneye tiled_grid dizin sağlar. Bu sınıf, yerel kutucuk kaynağına göre ve genel çıkış noktasıyla ilgili olarak öğeye erişmek için özelliklere sahiptir. |
| uninitialized_object Sınıfı | Başlatılmamış bir nesne kullanıldığında oluşan özel durum. |
| unsupported_feature Sınıfı | Desteklenmeyen bir özellik kullanıldığında oluşan özel durum. |
Listelemeler
| Veri Akışı Adı | Açıklama |
|---|---|
| access_type Numaralandırması | Veri erişim türünü belirtir. |
| queuing_mode Numaralandırması | Hızlandırıcıda desteklenen kuyruğa alma modlarını belirtir. |
İşleçler
| Operator | Açıklama |
|---|---|
| operator== İşleci (C++ AMP) | Belirtilen veri yapılarının eşit olup olmadığını belirler. |
| operator!= İşleci (C++ AMP) | Belirtilen veri yapılarının eşit olup olmadığını belirler. |
| operator+ İşleci (C++ AMP) | Belirtilen bağımsız değişkenlerin bileşen açısından toplamını hesaplar. |
| operator- İşleci (C++ AMP) | Belirtilen bağımsız değişkenler arasındaki bileşen açısından farkı hesaplar. |
| operator* İşleci (C++ AMP) | Belirtilen bağımsız değişkenlerin bileşen açısından çarpımını hesaplar. |
| operator/ Operator (C++ AMP) | Belirtilen bağımsız değişkenlerin bileşen açısından bölüm değerini hesaplar. |
| operator% İşleci (C++ AMP) | belirtilen ilk bağımsız değişkenin modüllerini belirtilen ikinci bağımsız değişkene göre hesaplar. |
İşlevler
| Veri Akışı Adı | Açıklama |
|---|---|
| all_memory_fence | Tüm bellek erişimleri tamamlanana kadar kutucuktaki tüm iş parçacıklarının yürütülmesini engeller. |
| amp_uninitialize | C++ AMP çalışma zamanının başlatılmaz. |
| atomic_compare_exchange | Aşırı yüklendi. Belirtilen konumda depolanan değer, belirtilen ilk değere eşitse, belirtilen ikinci değer atomik işlemle aynı konumda depolanır. |
| atomic_exchange | Aşırı yüklendi. Belirtilen konumda depolanan değeri, atomik işlem olarak belirtilen değere ayarlar. |
| atomic_fetch_add | Aşırı yüklendi. Belirtilen konumda depolanan değeri bu değerin toplamına ve belirtilen değeri atomik işlem olarak ayarlar. |
| atomic_fetch_and | Aşırı yüklendi. Belirtilen konumda depolanan değeri bu değerin bit düzeyinde and ve belirtilen değeri atomik işlem olarak ayarlar. |
| atomic_fetch_dec | Aşırı yüklendi. Belirtilen konumda depolanan değeri azaltma ve sonucu atomik işlemle aynı konumda depolama. |
| atomic_fetch_inc | Aşırı yüklendi. Belirtilen konumda depolanan değeri artırır ve sonucu atomik işlemle aynı konumda depolar. |
| atomic_fetch_max | Aşırı yüklendi. Belirtilen konumda depolanan değeri bu değerin daha büyük bir değerine ve atomik işlem olarak belirtilen bir değere ayarlar. |
| atomic_fetch_min | Aşırı yüklendi. Belirtilen konumda depolanan değeri bu değerin daha küçük bir değerine ve atomik işlem olarak belirtilen bir değere ayarlar. |
| atomic_fetch_or | Aşırı yüklendi. Belirtilen konumda depolanan değeri bu değerin bit düzeyinde or ve belirtilen değeri atomik işlem olarak ayarlar. |
| atomic_fetch_sub | Aşırı yüklendi. Belirtilen konumda depolanan değeri, bu değerin farkıyla atomik işlem olarak belirtilen değeri ayarlar. |
| atomic_fetch_xor | Aşırı yüklendi. Belirtilen konumda depolanan değeri bu değerin bit düzeyinde xor ve belirtilen değeri atomik işlem olarak ayarlar. |
| kopya etmek | C++ AMP nesnesini kopyalar. Tüm zaman uyumlu veri aktarımı gereksinimleri karşılanıyor. Kod hızlandırıcıda kod çalıştırırken veriler kopyalanamaz. Bu işlevin genel biçimi şeklindedir copy(src, dest). |
| copy_async | Bir C++ AMP nesnesini kopyalar ve beklenebilen completion_future döndürür. Kod hızlandırıcı üzerinde çalışırken veriler kopyalanamaz. Bu işlevin genel biçimi şeklindedir copy(src, dest). |
| direct3d_abort | Kısıtlama yan tümcesine sahip bir işlevin yürütülmesini restrict(amp) durdurur. |
| direct3d_errorf | Biçimlendirilmiş bir dizeyi Visual Studio Çıktı penceresine yazdırır ve aynı biçimlendirme dizesine sahip bir runtime_exception özel durumu oluşturur. |
| direct3d_printf | Biçimlendirilmiş bir dizeyi Visual Studio Çıkış penceresine yazdırır. Kısıtlama yan tümcesine restrict(amp) sahip bir işlevden çağrılır. |
| global_memory_fence | Tüm genel bellek erişimleri tamamlanana kadar kutucuktaki tüm iş parçacıklarının yürütülmesini engeller. |
| parallel_for_each İşlevi (C++ AMP) | İşlem etki alanı genelinde bir işlev çalıştırır. |
| tile_static_memory_fence | Bellek erişimleri tamamlanana kadar tile_static kutucuktaki tüm iş parçacıklarının yürütülmesini engeller. |
Sabitler
| Veri Akışı Adı | Açıklama |
|---|---|
| HLSL_MAX_NUM_BUFFERS Sabiti | DirectX tarafından izin verilen en fazla arabellek sayısı. |
| MODULENAME_MAX_LENGTH Sabiti | Modül adının uzunluk üst sınırını depolar. Bu değer derleyicide ve çalışma zamanında aynı olmalıdır. |
Gereksinimler
Üst bilgi: amp.h