Fernando Sahmkow
644588fd88
ShaderCache/PipelineCache: Cache null shaders.
6 years ago
Fernando Sahmkow
f616dc0b59
Address Feedback.
6 years ago
Fernando Sahmkow
ec2f3e48e1
Fix GCC error.
6 years ago
Fernando Sahmkow
7f44f22451
Correct Linux Compile Error.
6 years ago
Fernando Sahmkow
d2d4a6cbcf
Clang format.
6 years ago
Fernando Sahmkow
b3e5f177ba
QueryCache: Only do async flushes on async gpu.
6 years ago
Fernando Sahmkow
f4ab223ef0
Async GPU: Only do reactive flushing on Extreme Level.
6 years ago
ReinUsesLisp
b752faf2d3
vk_fence_manager: Initial implementation
6 years ago
Fernando Sahmkow
0649f05900
QueryCache: Implement Async Flushes.
6 years ago
Fernando Sahmkow
131b342130
OpenGL: Guarantee writes to Buffers.
6 years ago
Fernando Sahmkow
1fb516cd97
GPU: Implement Flush Requests for Async mode.
6 years ago
Fernando Sahmkow
b7bc3c2549
FenceManager: Manage syncpoints and rename fences to semaphores.
6 years ago
Fernando Sahmkow
96bb961a64
BufferCache: Refactor async managing.
6 years ago
Fernando Sahmkow
b10db7e4a5
FenceManager: Implement async buffer cache flushes on High settings
6 years ago
Fernando Sahmkow
4adfc9bb08
Rasterizer: Document SignalFence & ReleaseFences and setup skeletons on Vulkan.
6 years ago
Fernando Sahmkow
a081a7c855
GPU: Fix rebase errors.
6 years ago
Fernando Sahmkow
e84eb64e51
Rasterizer: Disable fence managing in synchronous gpu.
6 years ago
Fernando Sahmkow
165ae823f5
ThreadManager: Sync async reads on accurate gpu.
6 years ago
Fernando Sahmkow
57fdbd9b89
FenceManager: Implement should wait.
6 years ago
Fernando Sahmkow
1f345ebe3a
GPU: Implement a Fence Manager.
6 years ago
Fernando Sahmkow
487379c593
OpenGL: Implement Fencing backend.
6 years ago
Fernando Sahmkow
ed7e965712
TextureCache: Flush linear textures after finishing rendering.
6 years ago
Fernando Sahmkow
339d0d9d6c
GPU: Delay Fences.
6 years ago
Fernando Sahmkow
8b1eb44b3e
BufferCache: Implement OnCPUWrite and SyncGuestHost
6 years ago
Fernando Sahmkow
da8f17715d
GPU: Refactor synchronization on Async GPU
6 years ago
Fernando Sahmkow
a60a22d9c2
Texture Cache: Implement OnCPUWrite and SyncGuestHost
6 years ago
Fernando Sahmkow
084ceb925a
UI: Replasce accurate GPU option for GPU Accuracy Level
6 years ago
David
11c63ca969
audio_renderer: Preliminary BehaviorInfo ( #3736 )
* audio_renderer: Preliminary BehaviorInfo
* clang format
* Fixed IsRevisionSupported
* fixed IsValidRevision
* Fixed logic error & spelling errors & crash
* Addressed issues
6 years ago
bunnei
9c12aef2f8
loader: nro: Fix process initialization using ProgramMetadata default.
6 years ago
bunnei
68039addbc
loader: elf: Fix process initialization using ProgramMetadata default.
6 years ago
bunnei
f0a7f05070
file_sys: program_metadata: Add a helper function for generating reasonable default metadata.
- We need this for homebrew process initialization.
6 years ago
FearlessTobi
4e99a06c70
npad: Lower log level for VibrateController to Debug
6 years ago
FearlessTobi
6ce0f3575a
audren: Lower log level for RequestUpdateImpl to Debug
6 years ago
MerryMage
a3a12deecc
dynarmic: Add option to disable CPU JIT optimizations
6 years ago
Amit Prakash Ambasta
5324b1d01e
Initialize quad_indexed_pass before uint8_pass
Fixes Werror=reorder in gcc
6 years ago
Lioncash
44e959157b
dma_pusher: Remove reliance on the global system instance
With this, the video core is now has no calls to the global system
instance at all.
6 years ago
bunnei
74c27fd1b5
core: arm_unicorn: Fix interpret fallback by temporarily mapping instruction page.
6 years ago
Jan Beich
afcc84a172
renderer_vulkan: assume X11 if not Windows/macOS after bf1d66b7c0
Render.Vulkan <Error> video_core/renderer_vulkan/renderer_vulkan.cpp:CreateInstance:131: Presentation not supported on this platform
Render.Vulkan <Error> video_core/renderer_vulkan/renderer_vulkan.cpp:CreateSurface:378: Presentation not supported on this platform
Core <Critical> core/core.cpp:Load:199: Failed to initialize system (Error 5)!
6 years ago
ReinUsesLisp
d62f57cf5a
fixed_pipeline_state: Hash and compare the whole structure
Pad FixedPipelineState's size to 384 bytes to be a multiple of 16.
Compare the whole struct with std::memcmp and hash with CityHash. Using
CityHash instead of a naive hash should reduce the number of collisions.
Improve used type traits to ensure this operation is safe.
With these changes the improvements to the hashable pipeline state are:
Optimized structure
Hash: 89 ns
Comparison: 103 ns
Construction*: 164 ns
Struct size: 384 bytes
Original structure
Hash: 148 ns
Equal: 174 ns
Construction*: 281 ns
Size: 1384 bytes
* Attribute state initialization is not measured
These measures are averages taken with std::chrono::high_accuracy_clock
on MSVC shipped on Visual Studio 16.6.0 Preview 2.1.
6 years ago
ReinUsesLisp
b571c92dfd
fixed_pipeline_state: Pack blending state
Reduce FixedPipelineState's size to 364 bytes.
6 years ago
ReinUsesLisp
548dd27f45
fixed_pipeline_state: Pack rasterizer state
Reduce FixedPipelineState's size to 600 bytes.
6 years ago
ReinUsesLisp
7790144a55
fixed_pipeline_state: Pack depth stencil state
Reduce FixedPipelineState's size to 632 bytes.
6 years ago
ReinUsesLisp
ab6704f20c
fixed_pipeline_state: Pack attribute state
Reduce FixedPipelineState's size from 1384 to 664 bytes
6 years ago
bunnei
03726fb7f5
video_core: gl_shader_decompiler: Fix implicit fallthrough errors.
6 years ago
bunnei
a8d5d08e2e
service: hid: npad: Fix implicit fallthrough errors.
6 years ago
Lioncash
bf328ed35a
gl_shader_decompiler: Avoid copies where applicable
Avoids unnecessary reference count increments where applicable and also
avoids reallocating a vector.
Unlikely to make a huge difference, but given how trivial of an
amendment it is, why not?
6 years ago
Lioncash
7714b02d95
time/system_clock_core: Remove unnecessary initializer
This is already initialized within the class body.
6 years ago
Lioncash
b533f18ab9
service/time: Mark IsStandardNetworkSystemClockAccuracySufficient as const
This doesn't modify internal member state.
6 years ago
Lioncash
0cfd3b94db
service/time: Add virtual destructors where applicable
Many of these implementations are used to implement a polymorphic
interface. While not directly used polymorphically, this prevents
virtual destruction from ever becoming an issue.
6 years ago
Lioncash
4d8a8a8033
service: Remove unused RequestParser instances
These aren't used, so they should be removed to reduce compilation
warnings.
6 years ago