crueter
f1e74f6855
[meta] remove MicroProfile ( #185 )
Signed-off-by: crueter <crueter@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/185
Reviewed-by: Lizzie <lizzie@eden-emu.dev>
7 months ago
swurl
b78089e978
Fast CPU Time & Improved Fast GPU Time ( #109 )
needs android setting
Signed-off-by: swurl <swurl@swurl.xyz>
Co-authored-by: Aleksandr Popovich <alekpopo@pm.me>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/109
Co-authored-by: swurl <swurl@swurl.xyz>
Co-committed-by: swurl <swurl@swurl.xyz>
10 months ago
darktux
616619c8f7
Port changes from Early Access
2 years ago
Liam
e15b1021a4
video_core: make gpu context aware of rendering program
2 years ago
Liam
ce72818075
nvnflinger/gpu: implement applet capture
2 years ago
Liam
5ec76db392
nvnflinger/gpu: implement layer stack composition
2 years ago
Fernando Sahmkow
ff6cd1c212
GPU-SMMU: Estimate game leak and preallocate device region.
2 years ago
Fernando Sahmkow
bb7b14acd5
GPU SMMU: Expand to 34 bits
2 years ago
Fernando Sahmkow
9db159da71
SMMU: Initial adaptation to video_core.
2 years ago
Fernando Sahmkow
eb4f7f35ea
NVDRV: Implement sessions and initial implementation of SMMU
2 years ago
Fernando Sahmkow
5ea12207f3
Query Cachge: Fully rework Vulkan's query cache
3 years ago
Fernando Sahmkow
4f68a8f45a
Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU
3 years ago
Fernando Sahmkow
7ae0cdbb09
MemoryTracking: Initial setup of atomic writes.
3 years ago
Morph
1b83c7eab4
(wall, native)_clock: Add GetGPUTick
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick.
3 years ago
Morph
2856fadaa0
core_timing: Use CNTPCT as the guest CPU tick
Previously, we were mixing the raw CPU frequency and CNTFRQ.
The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available.
3 years ago
bunnei
56600190e4
core: frontend: Refactor GraphicsContext to its own module.
3 years ago
Fernando Sahmkow
6bc60f78d9
GPU: Add Reactive flushing
3 years ago
Morph
e25334b8b3
core_timing: Use higher precision sleeps on Windows
The precision of sleep_for and wait_for is limited to 1-1.5ms on Windows.
Using SleepForOneTick() allows us to sleep for exactly one interval of the current timer resolution.
This allows us to take advantage of systems that have a timer resolution of 0.5ms to reduce CPU overhead in the event loop.
3 years ago
arades79
60a68839ee
remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistency
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
arades79
adcef452e0
add static lifetime to constexpr values to force compile time evaluation where possible
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
Behunin
09f64e648a
Remove OnCommandListEndCommand
Call rasterizer->ReleaseFences() directly
3 years ago
Liam
2c6460d168
renderer_opengl: refactor context acquire
3 years ago
Fernando Sahmkow
1595e77913
General: address feedback
4 years ago
Fernando Sahmkow
42ef10060a
VideoCore: Refactor fencing system.
4 years ago
Fernando Sahmkow
43d8a8fb77
NVDRV: Further refactors and eliminate old code.
4 years ago
Fernando Sahmkow
383f95a063
NVDRV: Refactor Host1x
4 years ago
Fernando Sahmkow
a6425c97e4
VideoCore: Refactor syncing.
4 years ago
Fernando Sahmkow
bc66debfdc
Texture cache: Fix the remaining issues with memory mnagement and unmapping.
4 years ago
Fernando Sahmkow
199642590c
NVHOST_CTRl: Implement missing method and fix some stuffs.
4 years ago
Fernando Sahmkow
8847b6645c
VideoCore: implement channels on gpu caches.
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
Merry
e8a60754e9
video_core: Replace lock_guard with scoped_lock
4 years ago
Fernando Sahmkow
9ebf1c00bd
Rasterizer: Refactor inlineToMemory.
4 years ago
Fernando Sahmkow
d14f1c9d42
GPU: Improve syncing.
4 years ago
Fernando Sahmkow
19270ae4e6
Rasterizer: Implement Inline2Memory Acceleration.
4 years ago
ameerj
664fcdc64b
gpu: Add shut down method to synchronize threads before destruction
4 years ago
ameerj
8badb6f4a7
Revert "Merge pull request #7668 from ameerj/fence-stop-token"
This reverts commit 5a612e9217 , reversing
changes made to 2e61bc3d51 .
4 years ago
ameerj
0585c60227
gpu: Use std::stop_token in WaitFence for VSync thread
Fixes a hang that may occur when stopping emulation and the VSync thread is blocked on the syncpoint condition variable.
4 years ago
Feng Chen
5e725163a0
Remove invalid header include
4 years ago
Feng Chen
4a3c1192b8
Address feedback
4 years ago
Feng Chen
10cc89bfdf
Support multiple videos playing
4 years ago
ameerj
ae3422e3b7
nvhost_ctrl: Refactor usage of gpu.LockSync()
This seems to only be used to protect a later gpu function call. So we can move the lock into that call instead.
5 years ago
ameerj
20a88d9d62
gpu: Migrate implementation to the cpp file
5 years ago
ameerj
2cb4bb689b
gpu: Use std::jthread for async gpu thread
5 years ago
Fernando Sahmkow
45da44d16a
accelerateDMA: Accelerate Buffer Copies.
5 years ago
Fernando Sahmkow
48d5b8bf3e
Fence Manager: Add fences on Reference Count.
5 years ago
bunnei
9aa144323b
video_core: gpu: WaitFence: Do not block threads during shutdown.
- Fixes a hang on shutdown when NVFlinger thread is waiting on a syncpoint that will never occur.
- Commonly observed when stopping emulation in Super Mario Odyssey.
5 years ago
ameerj
453e90ef6f
perf_stats: Rework FPS counter to be more accurate
The FPS counter was based on metrics in the nvdisp swapbuffers call. This metric would be accurate if the gpu thread/renderer were synchronous with the nvdisp service, but that's no longer the case.
This commit moves the frame counting responsibility onto the concrete renderers after their frame draw calls. Resulting in more meaningful metrics.
The displayed FPS is now made up of the average framerate between the previous and most recent update, in order to avoid distracting FPS counter updates when framerate is oscillating between close values.
The status bar update frequency was also changed from 2 seconds to 500ms.
5 years ago
ameerj
de494b30d4
nvhost_vic: Fix device closure
Implements the OnClose method of the nvhost_vic device, and removes the remnants of an older implementation.
Also cleans up some of the surrounding code.
5 years ago
Chloe Marcec
e4b60c77d6
Address issues
5 years ago