Liam
39c3184237
video_core: add option for pessimistic flushing
2022-08-25 12:32:14 -04:00
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
2022-08-19 16:08:40 -07:00
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.
2022-04-23 05:55:32 -04:00
Liam
2d4f844b1b
buffer_cache: cap vertex buffer sizes
2022-04-14 10:46:48 -04:00
Fernando Sahmkow
2bd91a6f84
Garbage Collection: Final tuning.
2022-03-25 01:51:52 +01:00
Fernando Sahmkow
35675b986e
Buffer Cache: Tune to the levels of the new GC.
2022-03-25 01:51:51 +01:00
Liam
c6b7c191ea
buffer_cache: reset cached write bits after flushing invalidations
2022-03-23 20:59:01 -04:00
bunnei
c9ffc287bf
Merge pull request #8048 from ameerj/include-purge
...
general: Reduce unused includes across the project
2022-03-21 18:03:54 -07:00
bunnei
516853d8a3
Merge pull request #7812 from FernandoS27/made-straight-from-the-nut
...
BufferCache: Find direction of the stream buffer increase.
2022-03-20 15:23:53 -07:00
Fernando Sahmkow
6182828ec5
BufferCache: Find direction of the stream buffer increase.
2022-03-20 21:37:23 +01:00
ameerj
b837219423
video_core: Reduce unused includes
2022-03-19 15:01:31 -04:00
Fernando Sahmkow
9ebf1c00bd
Rasterizer: Refactor inlineToMemory.
2022-02-01 01:47:28 +01:00
Fernando Sahmkow
19270ae4e6
Rasterizer: Implement Inline2Memory Acceleration.
2022-01-29 22:53:27 +01:00
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.
2022-01-27 15:31:43 -05:00
Fernando Sahmkow
4462c6ee38
VulkanBufferCache: Avoid adding barriers between multiple copies.
2021-11-16 22:11:32 +01:00
ameerj
73dd6230aa
buffer_cache: Minor fixes
...
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
2021-09-19 20:35:07 -04:00
Fernando Sahmkow
133f72c3f4
Garbage Collection: Make it more agressive on high priority mode.
2021-08-29 18:57:17 +02:00
Fernando Sahmkow
129bcd1b85
Garbage Collection: Adress Feedback.
2021-08-29 18:19:53 +02:00
Fernando Sahmkow
9a785765d8
Garbage Collection: enable as default, eliminate option.
2021-08-28 17:55:37 +02:00
Fernando Sahmkow
7d22f79cf0
VideoCore: Rework Garbage Collection.
2021-08-28 17:54:12 +02:00
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.
2021-07-27 06:24:44 -04:00
bunnei
0a328423e8
Merge pull request #6585 from ameerj/hades
...
Shader Decompiler Rewrite
2021-07-25 11:39:04 -07:00
ReinUsesLisp
2cd96376b5
buffer_cache: Fix debugging leftover
2021-07-22 21:51:38 -04:00
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.
2021-07-22 21:51:38 -04:00
ReinUsesLisp
ee69b7aa59
buffer_cache: Invalidate fast buffers on compute
2021-07-22 21:51:35 -04:00
ReinUsesLisp
5292190c8d
buffer_cache: Fix copy based uniform bindings tracking
2021-07-22 21:51:35 -04:00
ReinUsesLisp
535fb4e6b5
buffer_cache: Reduce uniform buffer size from shader usage
...
Increases performance significantly on certain titles.
2021-07-22 21:51:34 -04:00
ReinUsesLisp
ebfbb5e09f
buffer_cache: Mark uniform buffers as dirty if any enable bit changes
2021-07-22 21:51:34 -04:00
ReinUsesLisp
5ca5988c63
shader: Initial OpenGL implementation
2021-07-22 21:51:30 -04:00
ReinUsesLisp
03c16b085a
spirv: Implement image buffers
2021-07-22 21:51:27 -04:00
ReinUsesLisp
3e6cb6362d
shader: Interact texture buffers with buffer cache
2021-07-22 21:51:26 -04:00
ReinUsesLisp
9d433f0bd9
buffer_cache: Simplify clear logic
...
Use existing helper functions and avoid looping when
only one buffer has to be active.
2021-07-20 18:50:51 -03:00
Fernando Sahmkow
a358a281bf
Buffer cache: Fixes, Clang and Feedback.
2021-07-15 02:02:08 +02:00
Fernando Sahmkow
1eeef16a6e
Buffer Cache: Fixes to DMA Copy.
2021-07-14 18:25:33 +02:00
Fernando Sahmkow
4220d6a7d6
BufferCache: fix clearing on forced download.
2021-07-14 16:44:15 +02:00
Fernando Sahmkow
a0a9ff69fa
DMAEngine: Accelerate BufferClear
2021-07-13 03:49:47 +02:00
Fernando Sahmkow
2f222a20df
accelerateDMA: Fixes and feedback.
2021-07-12 10:33:35 +02:00
Fernando Sahmkow
45da44d16a
accelerateDMA: Accelerate Buffer Copies.
2021-07-11 01:33:17 +02:00
Fernando Sahmkow
1be1828db1
Buffer Cache: Address Feedback.
2021-07-10 21:34:55 +02:00
Fernando Sahmkow
bdd0787048
Buffer Cache: Fix GCC copmpile error
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
d9fc759460
BufferCache: Additional download fixes.
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
000f51250f
Buffer Cache: Revert unnecessary range reduction.
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
ee5dfe2c02
Fence Manager: Force ordering on WFI.
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
ddb595bf7f
Buffer Cache: Eliminate the AC Hack as the base game is fixed in Hades.
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
48d5b8bf3e
Fence Manager: Add fences on Reference Count.
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
907da84f02
Videocore: Address Feedback & CLANG Format.
2021-07-09 22:20:36 +02:00
Fernando Sahmkow
776da59abc
Buffer Cache: Fix High Downloads and don't predownload on Extreme.
2021-07-09 22:20:36 +02:00
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.
2021-06-26 03:29:34 -03:00
ReinUsesLisp
a0a7f569c0
buffer_cache/texture_cache: Make GC functions private
2021-06-26 02:17:36 -03:00
ReinUsesLisp
21e08723e7
buffer_cache: Silence implicit cast warning
2021-06-26 02:17:36 -03:00