907507886d
(wall, native)_clock: Add GetGPUTick
...
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick.
2023-06-07 21:44:42 -04:00
1492a65454
(wall, native)_clock: Rework NativeClock
2023-06-07 21:44:42 -04:00
981bc8aa1c
x64: Simplify RDTSC on non-MSVC compilers
...
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com >
2023-03-27 17:45:22 -04:00
d718eab351
native_clock: Wait for 10 seconds instead of 30
...
It was experimentally determined to be sufficient.
2023-03-07 21:17:46 -05:00
c27a626b5b
native_clock: Use RealTimeClock instead of SteadyClock
...
We want to synchronize RDTSC to real time.
2023-03-07 21:17:46 -05:00
dcd13a7566
native_clock: Re-adjust the RDTSC frequency
...
The RDTSC frequency reported by CPUID is not accurate to its true frequency.
We will spawn a separate thread to calculate the true RDTSC frequency after a measurement period of 30 seconds has elapsed.
2023-03-07 21:17:46 -05:00
376a414f5b
native_clock: Round RDTSC frequency to the nearest 1000
2023-03-05 02:36:31 -05:00
2e46110379
Revert Coretiming PRs 8531 and 7454 ( #8591 )
2022-07-27 19:47:06 -04:00
3196d957b0
Adress Feedback.
2022-06-30 10:18:56 +02:00
2575a93dc6
Native clock: Use atomic ops as before.
2022-06-28 22:42:00 +02:00
f5c1d7b8c8
Native Clock: remove inaccuracy mask.
2022-06-28 01:47:00 +02:00
9cafb0d912
Core: Fix tests.
2022-06-28 01:10:55 +02:00
096366ead5
Common: improve native clock.
2022-06-28 01:06:48 +02:00
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.
2022-04-23 05:55:32 -04:00
4052bfb4ad
native_clock: Internal linkage for FencedRDTSC
...
__forceinline required on MSVC for function to be inlined
2022-04-03 22:38:12 +01:00
fdd4d019ef
native_clock: Use lfence with rdtsc
2022-04-03 22:38:10 +01:00
979e53b87b
native_clock: Use writeback from CAS to avoid double-loading
2022-04-02 22:22:48 +01:00
c562c1d6be
native_clock: Use AtomicLoad128
2022-04-02 20:55:36 +01:00
923decae5a
common: Reduce unused includes
2022-03-19 15:01:31 -04:00
4e766280c4
common: wall_clock: Utilize constants for ms, us, and ns ratios
2022-01-30 12:36:56 -05:00
f919498f8f
native_clock: Wait for less time in EstimateRDTSCFrequency
...
In my testing, waiting for 200ms provided the same level of precision as the previous implementation when estimating the RDTSC frequency.
This significantly improves the yuzu executable launch times since we reduced the wait time from 3 seconds to 200 milliseconds.
2021-12-03 19:55:59 -05:00
762b8ad448
general: Replace high_resolution_clock with steady_clock
...
On some OSes, high_resolution_clock is an alias to system_clock and is not monotonic in nature. Replace this with steady_clock.
2021-12-02 14:20:43 -05:00
0a91599aec
common: Merge uint128 to a single header file with inlines.
2021-02-15 14:46:04 -08:00
53d92318b8
X86/NativeClock: Reimplement RTDSC access to be lock free.
2021-01-02 04:00:27 +01:00
d4f871cb6a
X86/NativeClock: Improve performance of clock calculations on hot path.
2021-01-02 00:43:47 +01:00
1ea6bdef05
audio_core: Make shadowing and unused parameters errors
...
Moves the audio code closer to enabling warnings as errors in general.
2020-12-03 00:54:31 -05:00
2f8947583f
Core/Common: Address Feedback.
2020-06-27 18:20:06 -04:00
534466754f
X64 Clock: Reduce accuracy to be less or equal to guest accuracy.
2020-06-27 11:35:55 -04:00
18dcb09342
HostTiming: Pause the hardware clock on pause.
2020-06-27 11:35:10 -04:00
e3524d1142
Common: Refactor & Document Wall clock.
2020-06-18 16:29:18 -04:00
234b5ff6a9
Common: Implement WallClock Interface and implement a native clock for x64
2020-06-18 16:29:17 -04:00