Ressourcenlimits (Direct3D 11)
Dieses Thema enthält eine Liste der Ressourcen, die Direct3D 11 unterstützt (insbesondere Hardware auf Featureebene 11 oder 9.x).
- Ressourcenlimits für Hardware auf Featureebene 11
- Ressourcenlimits für Hardware auf Featureebene 9.x
- Zugehörige Themen
Ressourcenlimits für Hardware auf Featureebene 11
Alle diese Ressourcenlimits werden in D3d11.h als Konstanten definiert.
| Resource | Begrenzung |
|---|---|
| Anzahl der Elemente in einem konstanten Puffer | D3D11 _ REQ _ CONSTANT BUFFER ELEMENT COUNT _ _ _ (4096) |
| Anzahl der Texel (unabhängig von der Strukturgröße) in einem Puffer | D3D11 _ REQ _ BUFFER RESOURCE _ _ TEXEL COUNT _ _ 2 TO EXP _ _ (2 7) texels |
| Texture1D U-Dimension | D3D11 _ REQ _ TEXTURE1D _ U DIMENSION _ (16384) |
| Texture1DArray-Dimension | D3D11 _ REQ _ TEXTURE1D _ ARRAY AXIS DIMENSION _ _ (2048 Arrayslices) |
| Texture2D-U/V-Dimension | D3D11 _ REQ _ TEXTURE2D _ _ U- ODER _ _ V-DIMENSION (16384) |
| Texture2DArray-Dimension | D3D11 _ REQ _ TEXTURE2D _ ARRAY AXIS DIMENSION _ _ (2048 Arrayslices) |
| Texture3D-Dimension "U/V/W" | D3D11 _ REQ _ TEXTURE3D _ U _ _ V- ODER _ _ W-DIMENSION (2048) |
| TextureCube-Dimension | D3D11 _ REQ _ TEXTURECUBE _ DIMENSION (16384) |
| Ressourcengröße (in MB) für eine der vorherigen Ressourcen | min(max(128,0,25f (Menge dedizierter * VRAM)), 2048) MB D3D11 _ REQ _ RESOURCE SIZE IN _ _ _ MEGABYTES _ EXPRESSION A TERM _ _ (128) D3D11 _ REQ _ RESOURCE SIZE IN _ _ _ MEGABYTES _ EXPRESSION B TERM _ _ (0,25f) D3D11 _ REQ _ RESOURCE SIZE IN _ _ _ MEGABYTES _ EXPRESSION C TERM _ _ (2048) |
| Anisotrope Filterung maxanisotropy | D3D11 _ REQ _ MAXANISOTROPY (16) |
| Adressierbare Ressourcendimension durch Filtern von Hardware | D3D11 _ REQ _ FILTERING _ HW _ ADDRESSABLE RESOURCE DIMENSION _ _ (16384) per dimension |
| Ressourcengröße (in MB), die durch IA (Eingabe- oder Scheitelpunktdaten) oder VS/GS/PS (Punktbeispiel) adressierbar ist | max(128,0,25f * (Menge dedizierter VRAM)) MB D3D11 _ REQ _ RESOURCE SIZE IN _ _ _ MEGABYTES _ EXPRESSION A TERM _ _ (128) D3D11 _ REQ _ RESOURCE SIZE IN _ _ _ MEGABYTES _ EXPRESSION B TERM _ _ (0,25f) |
| Gesamtanzahl der Ressourcenansichten pro Kontext (jedes Array zählt als 1) (alle Ansichtstypen haben ein gemeinsames Limit) | D3D11 _ ANZAHL DER _ REQ-RESSOURCENANSICHTEN _ _ PRO GERÄT _ _ _ 2 BIS EXP _ _ (2 ) |
| Pufferstrukturgröße (mehrere Elemente) | D3D11 _ REQ _ MULTI ELEMENT STRUCTURE SIZE IN BYTES _ _ _ _ _ (2048 Bytes) |
| Streamausgabegröße | Identisch mit der Anzahl der Texel in einem Puffer (siehe oben) |
| Draw- oder DrawInstanced-Scheitelpunktanzahl (einschließlich Instancing) | D3D11 _ REQ _ DRAW _ VERTEX COUNT _ _ 2 TO EXP _ _ (2 ) |
| DrawIndexed [ Instanced ] () vertex count (including instancing) (DrawIndexed Instanced () vertex count (einschließlich Instanzinstancing)) | D3D11 _ REQ _ DRAWINDEXED _ INDEX COUNT _ _ 2 TO EXP _ _ (2 ) |
| Ausgabedaten zum GS-Aufruf * (Komponentenvertices) | D3D11 _ GS _ MAX OUTPUT _ _ VERTEX COUNT ACROSS _ _ _ INSTANCES (1024) |
| Gesamtanzahl von Samplerobjekten pro Kontext | D3D11 _ REQ _ SAMPLER _ OBJECT COUNT PER DEVICE _ _ _ (4096) |
| Gesamtanzahl von Viewport-/Scissorobjekten pro Pipeline | D3D11 _ _ VIEWPORT- UND _ SCISSORRECT-OBJEKTANZAHL _ PRO PIPELINE _ _ _ (16) |
| Gesamtanzahl der Clip/CULL-Abstände pro Scheitelpunkt | D3D11 _ CLIP _ ODER _ CULL DISTANCE COUNT _ _ (8) |
| Gesamtanzahl der Blend-Objekte pro Kontext | D3D11 _ REQ _ BLEND OBJECT COUNT PER DEVICE _ _ _ _ (4096) |
| Gesamtanzahl der Tiefen-/Schablonenobjekte pro Kontext | D3D11 _ REQ _ DEPTH _ _ SCHABLONENOBJEKTANZAHL _ _ PRO GERÄT _ (4096) |
| Gesamtanzahl der Rasterizer-Zustandsobjekte pro Kontext | D3D11 _ REQ _ RASTERIZER _ OBJECT COUNT PER DEVICE _ _ _ (4096) |
| Maximale Stichprobenanzahl pro Pixel während des Multisamplings | D3D11 _ MAX _ MULTISAMPLE _ SAMPLE COUNT _ (32) |
| Anzahl der Vertexelemente der Shaderressource (vier 32-Bit-Komponenten) | D3D11 _ STANDARD _ VERTEX ELEMENT COUNT _ _ (32) |
| Common-Shader Core (vier 32-Bit-Komponenten) temp-register count (r # + indexable x # [ n ] ) | D3D11 _ COMMONSHADER _ TEMP REGISTER COUNT _ _ (4096) |
| Allgemeine Shaderkern-Konstantenpufferslots | D3D11 _ COMMONSHADER _ CONSTANT BUFFER _ _ HW SLOT COUNT _ (15) (+1 für einen unmittelbar konstanten Puffer _ in Shadern vorgesehen) |
| Allgemeine Eingabe-Ressourcenslots für Shaderkerne | D3D11 _ COMMONSHADER _ INPUT RESOURCE REGISTER COUNT _ _ _ (128) |
| Samplerslots für allgemeine Shaderkerne | D3D11 _ COMMONSHADER _ SAMPLER _ SLOT COUNT _ (16) |
| Common-Shader core subroutine-nesting limit (Common-Shader Core-Unterroutinenschachtelungslimit) | D3D11 _ COMMONSHADER _ SUBROUTINE _ NESTING _ LIMIT (32) |
| Common-Shader core flow-control nesting limit (Common-Shader Core-Flusssteuerungs-Schachtelungslimit) | D3D11 _ COMMONSHADER _ FLOWCONTROL _ NESTING _ LIMIT (64) |
| Anzahl der Vertex-Shader-Eingaberegister (vier 32-Bit-Komponenten) | D3D11 _ VS INPUT REGISTER COUNT _ _ _ (32) |
| Anzahl der Vertex-Shader-Ausgaberegister (vier 32-Bit-Komponenten) | D3D11 _ VS OUTPUT REGISTER COUNT _ _ _ (32) |
| Eingaberegisteranzahl des Geometrie-Shaders (vier 32-Bit-Komponenten) | D3D11 _ _ GS-EINGABEREGISTERANZAHL _ _ (32) |
| Anzahl der Ausgaberegister des Geometrie-Shaders (vier 32-Bit-Komponenten) | D3D11 _ _ GS-AUSGABEREGISTERANZAHL _ _ (32) |
| Anzahl der Eingaberegister für Pixels shader (vier 32-Bit-Komponenten) | D3D11 _ PS INPUT REGISTER COUNT _ _ _ (32) |
| Pixel-Shader-Ausgabeslots | 8 |
| Anzahl der Pixel-Shader-Ausgabetiefenregister (eine 32-Bit-Komponente) | D3D11 _ PS OUTPUT DEPTH REGISTER COUNT _ _ _ _ (1) |
| Eingaberessourcenslots für den Eingabe-Assemblerindex | D3D11 _ IA _ INDEX INPUT RESOURCE SLOT COUNT _ _ _ _ (1) |
| Eingaberessourcenslots für den Vertexeingabe des Eingabe-Assemblers | D3D11 _ IA _ VERTEX _ INPUT RESOURCE SLOT COUNT _ _ _ (32) |
| Anzahl der Eingaberegister für Den Shader-Hüllenkontrollpunkt (vier 32-Bit-Komponenten) | D3D11 _ HS _ CONTROL POINT PHASE INPUT REGISTER COUNT _ _ _ _ _ (32) |
| Hüllen-Shaderanzahl von Eingabesteuerpunkten | BITANZAHL DER D3D11 _ _ HS-STEUERUNGSPUNKTREGISTERKOMPONENTE _ _ _ _ _ (32) |
| Ausgaberegisteranzahl des Kontrollpunkts des Hüllen-Shaders (vier 32-Bit-Komponenten) | D3D11 _ HS _ CONTROL POINT PHASE OUTPUT REGISTER COUNT _ _ _ _ _ (32) |
| Hüllen-Shaderanzahl von Ausgabekontrollpunkten | BITANZAHL DER D3D11 _ _ HS-STEUERUNGSPUNKTREGISTERKOMPONENTE _ _ _ _ _ (32) |
| Patchkonstante Ausgaberegisteranzahl des Hüllen-Shaders (vier 32-Bit-Komponenten) | ANZAHL DER D3D11 _ _ HS-AUSGABEPATCHKONSTANTENREGISTER _ _ _ _ (32) |
| Anzahl der Eingaberegister des Domänen-Shader-Steuerungspunkts (vier 32-Bit-Komponenten) | REGISTERANZAHL DES D3D11 _ _ DS-EINGABEKONTROLLPUNKTS _ _ _ _ (32) |
| Anzahl der Eingabesteuerpunkte für den Domänen-Shader | D3D11 _ DS _ INPUT CONTROL POINT REGISTER COMPONENT BIT COUNT _ _ _ _ _ _ (32) |
| Patchkonstante Eingaberegisteranzahl des Domänen-Shaders (vier 32-Bit-Komponenten) | ANZAHL DER D3D11 _ _ _ DS-EINGABEPATCHKONSTANTENREGISTER _ _ _ (32) |
| Domain shader tessellated vertex output-register count (vier 32-Bit-Komponenten) | D3D11 _ _ DS-AUSGABEREGISTERANZAHL _ _ (32) |
| Ungeordnete Zugriffsansichtsslots (UAV) des Compute-Shaders | D3D11 _ PS _ CS _ UAV REGISTER COUNT _ _ (8)4 |
| Größe der Ressourcenkachel in Bytes | D3D11 _ 2 KACHELGRÖßE DER _ GEKACHELTEN _ RESSOURCE IN _ _ _ _ BYTE ( 65536 ) |
Eine App kann versuchen, mehr Arbeitsspeicher für eine Ressource zuzuweisen, als die maximale Ressourcengröße angibt. Das heißt, die Direct3D 11-Runtime lässt diese Speicherbelegungsversuche zu, falls sie von der Hardware unterstützt werden. Die Direct3D 11-Runtime garantiert jedoch nur, dass Zuordnungen innerhalb der maximalen Ressourcengröße von allen Hardwarekomponenten der Featureebene 11 unterstützt werden. Wenn eine App versucht, Speicher für eine Ressource innerhalb der maximalen Ressourcengröße zuzuweisen, schlägt die Laufzeit den Versuch nur fehl, wenn dem Betriebssystem die Ressourcen ausgehen. Wenn eine App versucht, Arbeitsspeicher für eine Ressource über der maximalen Ressourcengröße zuzuordnen, kann die Laufzeit den Versuch fehlschlagen, weil entweder das Betriebssystem überfordert ist oder die Hardware keine Zuordnungen über der maximalen Ressourcengröße unterstützt. Die Debugebene überprüft nur die GRÖßE DER RESSOURCE D3D11 _ REQ _ IN _ _ _ MEGABYTES _ EXPRESSION A TERM _ _ (128) MB.
Die Pixel-Shader-Ausgabeslots werden von Pixelausgaberegistern (vier 32-Bit-Komponenten) und UAVs gemeinsam genutzt.
Die Gesamtanzahl der Komponenten für alle Kontrollpunkte des Hüllen-Shaders für Domänen-Shader ist auf 3968 beschränkt. Dies ist 128 weniger als die maximale Anzahl von Kontrollpunkten, bei denen die maximale Anzahl von Kontrollpunktregistern vier Komponenten mal beträgt.
4Für die Compute-Shaderprofile CS _ 4 _ 0 und CS _ 4 _ 1 ist nur ein UAV verfügbar. Weitere Informationen zu Shaderprofilen finden Sie unter Shadermodell 5.
Ressourcenlimits für Hardware auf Featureebene 9.x
Alle diese Ressourcenlimits auf Featureebene 9.x werden in D3dcommon.h als Konstanten definiert.
| Resource | Begrenzung |
|---|---|
| Dimension "Texture1D U" der Featureebene _ 9 1 | D3D _ FL9 _ 1 _ REQ _ TEXTURE1D _ U DIMENSION _ (2048) |
| Textur1D-U-Dimension der Featureebene _ 9 3 | D3D _ FL9 _ 3 _ REQ _ TEXTURE1D _ U DIMENSION _ (4096) |
| Textur2D-Dimension der Featureebene _ 9 1 U/V | D3D _ FL9 _ 1 _ REQ _ TEXTURE2D _ U ODER V DIMENSION _ _ _ (2048) |
| U/V-Dimension der _ Featureebene 9 3 texture2D | D3D _ FL9 _ 3 _ REQ _ TEXTURE2D _ U ODER V DIMENSION _ _ _ (4096) |
| Textur3D-Dimension der Featureebene _ 9 1 U/V/W | D3D _ FL9 _ 1 _ REQ _ TEXTURE3D _ U V ODER W DIMENSION _ _ _ _ (256) |
| Texturcubedimension der Featureebene _ 9 1 | D3D _ FL9 _ 1 _ REQ _ TEXTURECUBE _ DIMENSION (512) |
| Texturcubedimension der Featureebene _ 9 3 | D3D _ FL9 _ 3 _ REQ _ TEXTURECUBE _ DIMENSION (4096) |
| Standardeinstellung für _ die Anisotropiefilterung auf Featureebene 9 1 | D3D _ FL9 _ 1 _ STANDARD _ _ MAX. ANISOTROPIE (2) |
| Maximale Anzahl von _ Eingabeassembliererprimitiven auf Featureebene 9 1 | D3D _ FL9 _ 1 _ IA _ PRIMITIVE MAX _ _ COUNT (65535) |
| Maximale Anzahl von _ Eingabeassembliererprimitiven auf Featureebene 9 2 | D3D _ FL9 _ 2 _ IA _ PRIMITIVE MAX _ _ COUNT (1048575) |
| Gleichzeitige Renderziele auf Featureebene _ 9 1 | D3D _ FL9 _ 1 _ GLEICHZEITIGE _ _ _ RENDERZIELANZAHL (1) |
| Gleichzeitige Renderziele auf Featureebene _ 9 3 | D3D _ FL9 _ 3 _ GLEICHZEITIGE _ _ _ RENDERZIELANZAHL (4) |
| Maximale Texturwiedung auf Featureebene _ 9 1 | D3D _ FL9 _ 1 _ MAX TEXTURE REPEAT _ _ (128) |
| Maximale Texturwiedung auf Featureebene _ 9 2 | D3D _ FL9 _ 2 _ MAX TEXTURE REPEAT _ _ (2048) |
| Maximale Texturwiedung auf Featureebene _ 9 3 | D3D _ FL9 _ 3 _ MAX TEXTURE REPEAT _ _ (8192) |