rjx-mirror/Ryujinx.Graphics.Gpu/Memory
riperiperi ece36b274d
GAL: Send all buffer assignments at once rather than individually (#3881)
* GAL: Send all buffer assignments at once rather than individually

The `(int first, BufferRange[] ranges)` method call has very significant performance implications when the bindings are spread out, which they generally always are in Vulkan. This change makes it so that these methods are only called a maximum of one time per draw.

Significantly improves GPU thread performance in Pokemon Scarlet/Violet.

* Address Feedback

Removed SetUniformBuffers(int first, ReadOnlySpan<BufferRange> buffers)
2022-11-24 07:50:59 +00:00
..
Buffer.cs Removed unused usings. (#3593) 2022-08-18 18:04:54 +02:00
BufferBounds.cs Implement lazy flush-on-read for Buffers (SSBO/Copy) (#1790) 2021-01-17 17:08:06 -03:00
BufferCache.cs GPU: Relax locking on Buffer Cache (#3883) 2022-11-24 01:41:16 +00:00
BufferCacheEntry.cs POWER - Performance Optimizations With Extensive Ramifications (#2286) 2021-05-24 22:52:44 +02:00
BufferManager.cs GAL: Send all buffer assignments at once rather than individually (#3881) 2022-11-24 07:50:59 +00:00
BufferModifiedRangeList.cs Gpu: Fix thread safety of ReregisterRanges (#3865) 2022-11-18 21:47:29 +01:00
BufferTextureBinding.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
CounterCache.cs Implement Counter Queue and Partial Host Conditional Rendering (#1167) 2020-05-04 12:24:59 +10:00
GpuRegionHandle.cs Replace CacheResourceWrite with more general "precise" write (#2684) 2021-09-29 02:27:03 +02:00
IndexBuffer.cs Add XML documentation to Ryujinx.Graphics.Gpu.Memory 2020-01-09 02:13:00 +01:00
MemoryManager.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
MultiRangeWritableBlock.cs Texture Sync, incompatible overlap handling, data flush improvements. (#2971) 2022-01-09 13:28:48 -03:00
PhysicalMemory.cs New shader cache implementation (#3194) 2022-04-10 10:49:44 -03:00
PteKind.cs De-tile GOB when DMA copying from block linear to pitch kind memory regions (#3207) 2022-03-20 13:55:07 -03:00
UnmapEventArgs.cs Initial conditional rendering support (#1012) 2020-04-22 16:00:11 +10:00
VertexBuffer.cs Add XML documentation to Ryujinx.Graphics.Gpu.Memory 2020-01-09 02:13:00 +01:00