Batas Sumber Daya (Direct3D 11)
Topik ini berisi daftar sumber daya yang didukung Direct3D 11 (khususnya perangkat keras tingkat fitur 11 atau 9.x).
- Batas sumber daya untuk perangkat keras tingkat fitur 11
- Batas sumber daya untuk perangkat keras tingkat fitur 9.x
- Topik terkait
Batas sumber daya untuk perangkat keras tingkat fitur 11
Semua batas sumber daya ini didefinisikan sebagai konstanta di D3d11.h.
Sumber daya | Batas |
---|---|
Jumlah elemen dalam buffer konstanta | D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT (4096) |
Jumlah texel (terlepas dari ukuran struct) dalam buffer | D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP (2 7) texel |
Dimensi U Texture1D | D3D11_REQ_TEXTURE1D_U_DIMENSION (16384) |
Dimensi Texture1DArray | D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION (irisan array 2048) |
Dimensi U/V Texture2D | D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384) |
Dimensi Texture2DArray | D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (irisan array 2048) |
Dimensi Texture3D U/V/W | D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048) |
Dimensi TextureCube | D3D11_REQ_TEXTURECUBE_DIMENSION (16384) |
Ukuran sumber daya (dalam MB) untuk salah satu sumber daya sebelumnya | min(max(128,0,25f * (jumlah VRAM khusus)), 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) |
Pemfilteran anisotropic maxanisotropy | D3D11_REQ_MAXANISOTROPY (16) |
Dimensi sumber daya dapat diatasi dengan memfilter perangkat keras | D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION (16384) per dimensi |
Ukuran sumber daya (dalam MB) dapat diatasi oleh IA (data input atau vertex) atau VS/GS/PS (sampel titik) | max(128,0,25f * (jumlah VRAM khusus)) MB D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM (128) D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM (0,25f) |
Jumlah total tampilan sumber daya per konteks (Setiap array dihitung sebagai 1) (semua jenis tampilan memiliki batas bersama) | D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP (2 ) |
Ukuran struktur buffer (multi-elemen) | D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES (2048 byte) |
Ukuran output aliran | Sama seperti jumlah texel dalam buffer (lihat sebelumnya) |
Gambar atau jumlah vertex DrawInstanced (termasuk instancing) | D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP (2 ) |
Jumlah vertex DrawIndexed[Instanced]() (termasuk instancing) | D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (2 ) |
Data output pemanggilan GS (komponen * simpul) | D3D11_GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES (1024) |
Jumlah total objek sampler per konteks | D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE (4096) |
Jumlah total objek viewport/scissor per alur | D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16) |
Jumlah total jarak klip/cull per puncak | D3D11_CLIP_OR_CULL_DISTANCE_COUNT (8) |
Jumlah total objek campuran per konteks | D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE (4096) |
Jumlah total objek kedalaman/stensil per konteks | D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE (4096) |
Jumlah total objek status rasterizer per konteks | D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE (4096) |
Jumlah sampel per piksel maksimum selama multisampling | D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT (32) |
Jumlah elemen vertex sumber daya shader (empat komponen 32-bit) | D3D11_STANDARD_VERTEX_ELEMENT_COUNT (32) |
Common-shader core (empat komponen 32-bit) jumlah temp-register (r# + indexable x#[n]) | D3D11_COMMONSHADER_TEMP_REGISTER_COUNT (4096) |
Slot buffer konstanta inti shader umum | D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT (15) (+1 sisihkan untuk buffer konstanta langsung dalam shader) |
Slot sumber daya input inti common-shader | D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT (128) |
Slot sampler inti shader umum | D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT (16) |
Batas subroutine-nesting inti shader umum | D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT (32) |
Batas bersarang kontrol alur inti umum | D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT (64) |
Jumlah input-register shader vertex (empat komponen 32-bit) | D3D11_VS_INPUT_REGISTER_COUNT (32) |
Jumlah output-register shader vertex (empat komponen 32-bit) | D3D11_VS_OUTPUT_REGISTER_COUNT (32) |
Jumlah input-register shader geometri (empat komponen 32-bit) | D3D11_GS_INPUT_REGISTER_COUNT (32) |
Jumlah output-register shader geometri (empat komponen 32-bit) | D3D11_GS_OUTPUT_REGISTER_COUNT (32) |
Jumlah input-register shader pixel (empat komponen 32-bit) | D3D11_PS_INPUT_REGISTER_COUNT (32) |
Slot output shader piksel | 8 |
Jumlah register kedalaman output shader piksel (satu komponen 32-bit) | D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT (1) |
Input slot sumber daya input indeks perakitan | D3D11_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT (1) |
Input slot sumber daya input vertex perakitan | D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (32) |
Jumlah input-register titik kontrol shall hull (empat komponen 32-bit) | D3D11_HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT (32) |
Jumlah shader hull titik kontrol input | D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT (32) |
Jumlah output-register titik kontrol shader hull (empat komponen 32-bit) | D3D11_HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT (32) |
Jumlah shader hull titik kontrol output | D3D11_HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT (32) |
Hull shader patch jumlah output-register konstanta (empat komponen 32-bit) | D3D11_HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT (32) |
Jumlah input-register titik kontrol shader domain (empat komponen 32-bit) | D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COUNT (32) |
Jumlah shader domain titik kontrol input | D3D11_DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT (32) |
Jumlah input-register patch shader domain (empat komponen 32-bit) | D3D11_DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT (32) |
Shader domain tessellated vertex output-register count (empat komponen 32-bit) | D3D11_DS_OUTPUT_REGISTER_COUNT (32) |
Slot tampilan akses tidak berurut (UAV) shader komputasi | D3D11_PS_CS_UAV_REGISTER_COUNT (8)4 |
Ukuran petak peta sumber daya dalam byte | D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES ( 65536 ) |
Aplikasi dapat mencoba mengalokasikan lebih banyak memori untuk sumber daya daripada ukuran sumber daya maksimum yang ditentukan. Artinya, runtime Direct3D 11 memungkinkan upaya alokasi memori ini jika perangkat keras mungkin mendukungnya. Namun, runtime Direct3D 11 hanya menjamin bahwa alokasi dalam ukuran sumber daya maksimum didukung oleh semua perangkat keras tingkat fitur 11. Jika aplikasi mencoba mengalokasikan memori untuk sumber daya dalam ukuran sumber daya maksimum, runtime gagal hanya jika sistem operasi kehabisan sumber daya. Jika aplikasi mencoba mengalokasikan memori untuk sumber daya di atas ukuran sumber daya maksimum, runtime dapat gagal dalam upaya karena sistem operasi terlalu lama atau perangkat keras tidak mendukung alokasi di atas ukuran sumber daya maksimum. Lapisan debug hanya memeriksa D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM (128) MB.
Slot output shader piksel dibagi antara register output piksel (empat komponen 32-bit) dan UAV.
Jumlah total komponen untuk semua shader lambung ke titik kontrol shader domain dibatasi hingga 3968, yaitu 128 kurang dari titik kontrol maksimum kali titik kontrol maksimum mendaftarkan empat komponen.
4Untuk profil shader komputasi CS_4_0 dan CS_4_1 hanya ada 1 UAV yang tersedia. Untuk informasi selengkapnya tentang profil shader, lihat Model Shader 5.
Batas sumber daya untuk perangkat keras tingkat fitur 9.x
Semua batas sumber daya tingkat fitur 9.x ini didefinisikan sebagai konstanta di D3dcommon.h.
Sumber daya | Batas |
---|---|
Dimensi U texture1D tingkat fitur 9_1 | D3D_FL9_1_REQ_TEXTURE1D_U_DIMENSION (2048) |
Dimensi U texture1D tingkat fitur 9_3 | D3D_FL9_3_REQ_TEXTURE1D_U_DIMENSION (4096) |
Dimensi U/V tekstur 9_1 tingkat fitur | D3D_FL9_1_REQ_TEXTURE2D_U_OR_V_DIMENSION (2048) |
Dimensi U/V tekstur 9_3 tingkat fitur | D3D_FL9_3_REQ_TEXTURE2D_U_OR_V_DIMENSION (4096) |
Dimensi U/V/W tekstur 9_1 tingkat fitur | D3D_FL9_1_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (256) |
Dimensi textureCube tingkat fitur 9_1 | D3D_FL9_1_REQ_TEXTURECUBE_DIMENSION (512) |
Dimensi textureCube tingkat fitur 9_3 | D3D_FL9_3_REQ_TEXTURECUBE_DIMENSION (4096) |
Tingkat fitur 9_1 anisotropic pemfilteran maxanisotropy default | D3D_FL9_1_DEFAULT_MAX_ANISOTROPY (2) |
Tingkat fitur 9_1 primitif perakitan input maksimum | D3D_FL9_1_IA_PRIMITIVE_MAX_COUNT (65535) |
Tingkat fitur 9_2 primitif perakitan input maksimum | D3D_FL9_2_IA_PRIMITIVE_MAX_COUNT (1048575) |
Target render simultan tingkat fitur 9_1 | D3D_FL9_1_SIMULTANEOUS_RENDER_TARGET_COUNT (1) |
Target render simultan tingkat fitur 9_3 | D3D_FL9_3_SIMULTANEOUS_RENDER_TARGET_COUNT (4) |
Pengulangan tekstur maksimum tingkat fitur 9_1 | D3D_FL9_1_MAX_TEXTURE_REPEAT (128) |
Pengulangan tekstur maksimum tingkat fitur 9_2 | D3D_FL9_2_MAX_TEXTURE_REPEAT (2048) |
Pengulangan tekstur maksimum tingkat fitur 9_3 | D3D_FL9_3_MAX_TEXTURE_REPEAT (8192) |