1
0
mirror of https://github.com/wolfpld/tracy.git synced 2025-03-20 07:40:02 +08:00

Remember to calibrate timer.

This commit is contained in:
Bartosz Taudul
2017-10-03 15:35:43 +02:00
parent 7b1135239c
commit 2fb4c47491
2 changed files with 18 additions and 5 deletions
+4 -4
View File
@@ -236,16 +236,16 @@ bool Profiler::HandleServerQuery()
void Profiler::CalibrateTimer()
{
#if defined _MSC_VER || defined __CYGWIN__
unsigned int ui;
#ifdef TRACY_RDTSCP_SUPPORTED
int8_t cpu;
std::atomic_signal_fence( std::memory_order_acq_rel );
const auto t0 = std::chrono::high_resolution_clock::now();
const auto r0 = __rdtscp( &ui );
const auto r0 = tracy_rdtscp( cpu );
std::atomic_signal_fence( std::memory_order_acq_rel );
std::this_thread::sleep_for( std::chrono::milliseconds( 100 ) );
std::atomic_signal_fence( std::memory_order_acq_rel );
const auto t1 = std::chrono::high_resolution_clock::now();
const auto r1 = __rdtscp( &ui );
const auto r1 = tracy_rdtscp( cpu );
std::atomic_signal_fence( std::memory_order_acq_rel );
const auto dt = std::chrono::duration_cast<std::chrono::nanoseconds>( t1 - t0 ).count();