Commit Graph

130 Commits (f209e976f4887f399250c558ac725bc5723eec38)

Author SHA1 Message Date
Feng Chen cb971ad654 video_core: Reimplement inline index buffer binding 2 years ago
Kelebek1 752659aef3 Update 3D regs 3 years ago
Liam White afab6c143c General: Fix compilation for GCC 3 years ago
Fernando Sahmkow 770e19f51a Buffer Cache: Deduce vertex array limit from memory layout when limit is the highest possible. 3 years ago
Fernando Sahmkow b59ca4df0c Buffer Cache: Basic fixes. 3 years ago
bunnei f5fd6b5c86 DMA & InlineToMemory Engines Rework. 3 years ago
Fernando Sahmkow bc8b3d225e VideoCore: Refactor fencing system. 3 years ago
Fernando Sahmkow 139ea93512 VideoCore: implement channels on gpu caches. 3 years ago
Liam db3eb168cd video_core: add option for pessimistic flushing 3 years ago
Kyle Kienapfel 14e9de6678 code: dodge PAGE_SIZE #define
Some header files, specifically for OSX and Musl libc define PAGE_SIZE to be a number
This is great except in yuzu we're using PAGE_SIZE as a variable

Specific example
`static constexpr u64 PAGE_SIZE = u64(1) << PAGE_BITS;`

PAGE_SIZE PAGE_BITS PAGE_MASK are all similar variables.
Simply deleted the underscores, and then added YUZU_ prefix

Might be worth noting that there are multiple uses in different classes/namespaces
This list may not be exhaustive

Core::Memory   12 bits (4096)
QueryCacheBase 12 bits
ShaderCache    14 bits (16384)
TextureCache   20 bits (1048576, or 1MB)

Fixes #8779
3 years ago
Morph 99ceb03a1c general: Convert source file copyright comments over to SPDX
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
3 years ago
Liam d4571b123d buffer_cache: cap vertex buffer sizes 3 years ago
Fernando Sahmkow 9edbbf2af4 Garbage Collection: Final tuning. 3 years ago
Fernando Sahmkow 5e982a7812 Buffer Cache: Tune to the levels of the new GC. 3 years ago
Liam dea5de91d2 buffer_cache: reset cached write bits after flushing invalidations 3 years ago
bunnei 82ac66f8a4
Merge pull request #8048 from ameerj/include-purge
general: Reduce unused includes across the project
3 years ago
bunnei ff2e891022
Merge pull request #7812 from FernandoS27/made-straight-from-the-nut
BufferCache: Find direction of the stream buffer increase.
3 years ago
Fernando Sahmkow 3b0d233cbd BufferCache: Find direction of the stream buffer increase. 3 years ago
ameerj 1bc7d61b57 video_core: Reduce unused includes 3 years ago
Fernando Sahmkow 8a6e6465a7 Rasterizer: Refactor inlineToMemory. 3 years ago
Fernando Sahmkow 4258d515e6 Rasterizer: Implement Inline2Memory Acceleration. 3 years ago
ameerj f300a1d54b buffer_cache: Reduce stream buffer allocations when expanding from the left
The existing stream buffer optimization accounts for size increases at the end of the allocated buffer.
This adds the same optimization, increasing the size from the beginning of the buffer as well to reduce buffer allocations when expanding the same buffer from the left.
3 years ago
Fernando Sahmkow c5dbd93adb VulkanBufferCache: Avoid adding barriers between multiple copies. 3 years ago
ameerj 1ea8073783 buffer_cache: Minor fixes
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
4 years ago
Fernando Sahmkow fe0acec539 Garbage Collection: Make it more agressive on high priority mode. 4 years ago
Fernando Sahmkow ff48f06fb9 Garbage Collection: Adress Feedback. 4 years ago
Fernando Sahmkow ba82bb359b Garbage Collection: enable as default, eliminate option. 4 years ago
Fernando Sahmkow d540d284b5 VideoCore: Rework Garbage Collection. 4 years ago
Lioncash ec56a17acd buffer_cache: Remove unused small_vector in CommitAsyncFlushesHigh()
Given this is non-trivial, the constructor is required to execute, so
this removes a bit of redundant codegen.
4 years ago
bunnei 98b26b6e12
Merge pull request #6585 from ameerj/hades
Shader Decompiler Rewrite
4 years ago
ReinUsesLisp df9b7e18f5 buffer_cache: Fix debugging leftover 4 years ago
ReinUsesLisp 838d7e4ca5 buffer_cache: Fix size reductions not having in mind bind sizes
A buffer binding can change between shaders without changing the
shaders. This lead to outdated bindings on OpenGL.
4 years ago
ReinUsesLisp 94e751f415 buffer_cache: Invalidate fast buffers on compute 4 years ago
ReinUsesLisp 60a96c49e5 buffer_cache: Fix copy based uniform bindings tracking 4 years ago
ReinUsesLisp 4a2361a1e2 buffer_cache: Reduce uniform buffer size from shader usage
Increases performance significantly on certain titles.
4 years ago
ReinUsesLisp a7e9756671 buffer_cache: Mark uniform buffers as dirty if any enable bit changes 4 years ago
ReinUsesLisp d621e96d0d shader: Initial OpenGL implementation 4 years ago
ReinUsesLisp 416e1b7441 spirv: Implement image buffers 4 years ago
ReinUsesLisp e9a91bc5cc shader: Interact texture buffers with buffer cache 4 years ago
ReinUsesLisp 6e2ca7fbee buffer_cache: Simplify clear logic
Use existing helper functions and avoid looping when
only one buffer has to be active.
4 years ago
Fernando Sahmkow 1ae4b684ff Buffer cache: Fixes, Clang and Feedback. 4 years ago
Fernando Sahmkow a0eb3f8a3e Buffer Cache: Fixes to DMA Copy. 4 years ago
Fernando Sahmkow 8039be8b19 BufferCache: fix clearing on forced download. 4 years ago
Fernando Sahmkow b780d5b5c5 DMAEngine: Accelerate BufferClear 4 years ago
Fernando Sahmkow bc19d28963 accelerateDMA: Fixes and feedback. 4 years ago
Fernando Sahmkow be1a3f7a0f accelerateDMA: Accelerate Buffer Copies. 4 years ago
Fernando Sahmkow 977904dd84 Buffer Cache: Address Feedback. 4 years ago
Fernando Sahmkow 5e78ad4378 Buffer Cache: Fix GCC copmpile error 4 years ago
Fernando Sahmkow 2c8f4ed27f BufferCache: Additional download fixes. 4 years ago
Fernando Sahmkow f75544a943 Buffer Cache: Revert unnecessary range reduction. 4 years ago