Liam
39c3184237
video_core: add option for pessimistic flushing
4 years ago
Kyle Kienapfel
ea00332a67
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
4 years ago
Morph
2b87305d31
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.
4 years ago
Liam
2d4f844b1b
buffer_cache: cap vertex buffer sizes
4 years ago
Fernando Sahmkow
2bd91a6f84
Garbage Collection: Final tuning.
4 years ago
Fernando Sahmkow
35675b986e
Buffer Cache: Tune to the levels of the new GC.
4 years ago
Liam
c6b7c191ea
buffer_cache: reset cached write bits after flushing invalidations
4 years ago
Fernando Sahmkow
6182828ec5
BufferCache: Find direction of the stream buffer increase.
4 years ago
ameerj
b837219423
video_core: Reduce unused includes
4 years ago
Fernando Sahmkow
9ebf1c00bd
Rasterizer: Refactor inlineToMemory.
4 years ago
Fernando Sahmkow
19270ae4e6
Rasterizer: Implement Inline2Memory Acceleration.
4 years ago
ameerj
9bffee169b
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.
4 years ago
Fernando Sahmkow
4462c6ee38
VulkanBufferCache: Avoid adding barriers between multiple copies.
5 years ago
ameerj
73dd6230aa
buffer_cache: Minor fixes
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
5 years ago
Fernando Sahmkow
133f72c3f4
Garbage Collection: Make it more agressive on high priority mode.
5 years ago
Fernando Sahmkow
129bcd1b85
Garbage Collection: Adress Feedback.
5 years ago
Fernando Sahmkow
9a785765d8
Garbage Collection: enable as default, eliminate option.
5 years ago
Fernando Sahmkow
7d22f79cf0
VideoCore: Rework Garbage Collection.
5 years ago
Lioncash
dd25abba68
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.
5 years ago
ReinUsesLisp
2cd96376b5
buffer_cache: Fix debugging leftover
5 years ago
ReinUsesLisp
b7cf8e0de4
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.
5 years ago
ReinUsesLisp
ee69b7aa59
buffer_cache: Invalidate fast buffers on compute
5 years ago
ReinUsesLisp
5292190c8d
buffer_cache: Fix copy based uniform bindings tracking
5 years ago
ReinUsesLisp
535fb4e6b5
buffer_cache: Reduce uniform buffer size from shader usage
Increases performance significantly on certain titles.
5 years ago
ReinUsesLisp
ebfbb5e09f
buffer_cache: Mark uniform buffers as dirty if any enable bit changes
5 years ago
ReinUsesLisp
5ca5988c63
shader: Initial OpenGL implementation
5 years ago
ReinUsesLisp
03c16b085a
spirv: Implement image buffers
5 years ago
ReinUsesLisp
3e6cb6362d
shader: Interact texture buffers with buffer cache
5 years ago
ReinUsesLisp
9d433f0bd9
buffer_cache: Simplify clear logic
Use existing helper functions and avoid looping when
only one buffer has to be active.
5 years ago
Fernando Sahmkow
a358a281bf
Buffer cache: Fixes, Clang and Feedback.
5 years ago
Fernando Sahmkow
1eeef16a6e
Buffer Cache: Fixes to DMA Copy.
5 years ago
Fernando Sahmkow
4220d6a7d6
BufferCache: fix clearing on forced download.
5 years ago
Fernando Sahmkow
a0a9ff69fa
DMAEngine: Accelerate BufferClear
5 years ago
Fernando Sahmkow
2f222a20df
accelerateDMA: Fixes and feedback.
5 years ago
Fernando Sahmkow
45da44d16a
accelerateDMA: Accelerate Buffer Copies.
5 years ago
Fernando Sahmkow
1be1828db1
Buffer Cache: Address Feedback.
5 years ago
Fernando Sahmkow
bdd0787048
Buffer Cache: Fix GCC copmpile error
5 years ago
Fernando Sahmkow
d9fc759460
BufferCache: Additional download fixes.
5 years ago
Fernando Sahmkow
000f51250f
Buffer Cache: Revert unnecessary range reduction.
5 years ago
Fernando Sahmkow
ee5dfe2c02
Fence Manager: Force ordering on WFI.
5 years ago
Fernando Sahmkow
ddb595bf7f
Buffer Cache: Eliminate the AC Hack as the base game is fixed in Hades.
5 years ago
Fernando Sahmkow
48d5b8bf3e
Fence Manager: Add fences on Reference Count.
5 years ago
Fernando Sahmkow
907da84f02
Videocore: Address Feedback & CLANG Format.
5 years ago
Fernando Sahmkow
776da59abc
Buffer Cache: Fix High Downloads and don't predownload on Extreme.
5 years ago
ReinUsesLisp
b89963e542
buffer_cache: Only flush downloaded size
Fixes a regression unintentionally introduced by the garbage collector.
This makes regular memory downloads only flush the requested sizes.
This negatively affected Koei Tecmo games.
5 years ago
ReinUsesLisp
a0a7f569c0
buffer_cache/texture_cache: Make GC functions private
5 years ago
ReinUsesLisp
21e08723e7
buffer_cache: Silence implicit cast warning
5 years ago
Wunkolo
722f9c3cb5
common: Replace common_sizes into user-literals
Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc
user-literals within literals.h.
To keep the global namespace clean, users will have to use:
```
using namespace Common::Literals;
```
to access these literals.
5 years ago
Fernando Sahmkow
aa941d40cd
Reaper: Change memory restrictions on TC depending on host memory on VK.
5 years ago
Fernando Sahmkow
2fd0207e2e
Reaper: Address Feedback.
5 years ago