diff options
| author | Egor Yusov <egor.yusov@gmail.com> | 2018-09-24 03:30:58 +0000 |
|---|---|---|
| committer | Egor Yusov <egor.yusov@gmail.com> | 2018-09-24 03:30:58 +0000 |
| commit | ef04580d047c3d4e1b34c76c2af8fd6f333af6ff (patch) | |
| tree | 8a71c47ef642952e7886bbec5ba4279e0459e215 /Graphics/GraphicsEngine | |
| parent | Fixed build - attempt 2 (diff) | |
| download | DiligentCore-ef04580d047c3d4e1b34c76c2af8fd6f333af6ff.tar.gz DiligentCore-ef04580d047c3d4e1b34c76c2af8fd6f333af6ff.zip | |
Reworked dynamic descriptor set allocation/deallocation in Vk backend
Diffstat (limited to 'Graphics/GraphicsEngine')
| -rw-r--r-- | Graphics/GraphicsEngine/interface/GraphicsTypes.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/Graphics/GraphicsEngine/interface/GraphicsTypes.h b/Graphics/GraphicsEngine/interface/GraphicsTypes.h index 7dc55c20..7d4f6817 100644 --- a/Graphics/GraphicsEngine/interface/GraphicsTypes.h +++ b/Graphics/GraphicsEngine/interface/GraphicsTypes.h @@ -1365,12 +1365,15 @@ namespace Diligent /// Size of the main descriptor pool that is used to allocate descriptor sets /// for static and mutable variables. If allocation from the current pool fails, /// the engine creates another one. - DescriptorPoolSize MainDescriptorPoolSize {1024, 1024, 8192, 8192, 1024, 4096, 4096, 1024, 1024}; + // Max SepSm CmbSm SmpImg StrImg UB SB UTxB StTxB + DescriptorPoolSize MainDescriptorPoolSize {8192, 1024, 8192, 8192, 1024, 4096, 4096, 1024, 1024}; /// Size of the dynamic descriptor pool that is used to allocate descriptor sets - /// for dynamic variables. Every device context has its own dynamic descriptor pool. - /// If allocation from the current pool fails, the engine creates another one. - DescriptorPoolSize DynamicDescriptorPoolSize { 256, 256, 2048, 2048, 256, 1024, 1024, 256, 256}; + /// for dynamic variables. Every device context has its own dynamic descriptor set allocator. + /// The allocator requests pools from global dynamic descriptor pool manager, and then + /// performs lock-free suballocations from the pool. + // Max SepSm CmbSm SmpImg StrImg UB SB UTxB StTxB + DescriptorPoolSize DynamicDescriptorPoolSize {2048, 256, 2048, 2048, 256, 1024, 1024, 256, 256}; /// Allocation granularity for device-local memory Uint32 DeviceLocalMemoryPageSize = 16 << 20; |
