SH-3406 WIP convert fast timers to lltrace system
fixed scale of reported times moved reset calls to happen at same time so we don't show partial resultsmeow-7.2.2
parent
ca37317a14
commit
ca2207bd35
|
|
@ -144,7 +144,6 @@ U64 BlockTimer::countsPerSecond() // counts per second for the *32-bit* timer
|
|||
//getCPUFrequency returns MHz and sCPUClockFrequency wants to be in Hz
|
||||
static LLUnit<LLUnits::Hertz, U64> sCPUClockFrequency = LLProcessorInfo().getCPUFrequency();
|
||||
|
||||
// we drop the low-order byte in our timers, so report a lower frequency
|
||||
#else
|
||||
// If we're not using RDTSC, each fast timer tick is just a performance counter tick.
|
||||
// Not redefining the clock frequency itself (in llprocessor.cpp/calculate_cpu_frequency())
|
||||
|
|
@ -157,7 +156,7 @@ U64 BlockTimer::countsPerSecond() // counts per second for the *32-bit* timer
|
|||
firstcall = false;
|
||||
}
|
||||
#endif
|
||||
return sCPUClockFrequency >> 8;
|
||||
return sCPUClockFrequency;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
@ -390,8 +389,7 @@ void BlockTimer::resetFrame()
|
|||
static S32 call_count = 0;
|
||||
if (call_count % 100 == 0)
|
||||
{
|
||||
LL_DEBUGS("FastTimers") << "countsPerSecond (32 bit): " << countsPerSecond() << LL_ENDL;
|
||||
LL_DEBUGS("FastTimers") << "get_clock_count (64 bit): " << get_clock_count() << LL_ENDL;
|
||||
LL_DEBUGS("FastTimers") << "countsPerSecond: " << countsPerSecond() << LL_ENDL;
|
||||
LL_DEBUGS("FastTimers") << "LLProcessorInfo().getCPUFrequency() " << LLProcessorInfo().getCPUFrequency() << LL_ENDL;
|
||||
LL_DEBUGS("FastTimers") << "getCPUClockCount32() " << getCPUClockCount32() << LL_ENDL;
|
||||
LL_DEBUGS("FastTimers") << "getCPUClockCount64() " << getCPUClockCount64() << LL_ENDL;
|
||||
|
|
|
|||
|
|
@ -223,7 +223,8 @@ namespace LLTrace
|
|||
|
||||
LL_FORCE_INLINE ACCUMULATOR& getPrimaryAccumulator() const
|
||||
{
|
||||
return AccumulatorBuffer<ACCUMULATOR>::getPrimaryStorage()[mAccumulatorIndex];
|
||||
ACCUMULATOR* accumulator_storage = AccumulatorBuffer<ACCUMULATOR>::getPrimaryStorage();
|
||||
return accumulator_storage[mAccumulatorIndex];
|
||||
}
|
||||
|
||||
size_t getIndex() const { return mAccumulatorIndex; }
|
||||
|
|
|
|||
|
|
@ -71,7 +71,7 @@ template<typename UNIT_TYPE, typename STORAGE_TYPE>
|
|||
struct LLUnit
|
||||
{
|
||||
typedef LLUnit<UNIT_TYPE, STORAGE_TYPE> self_t;
|
||||
typedef typename STORAGE_TYPE storage_t;
|
||||
typedef STORAGE_TYPE storage_t;
|
||||
|
||||
LLUnit(storage_t value = storage_t())
|
||||
: mValue(value)
|
||||
|
|
|
|||
|
|
@ -1235,6 +1235,8 @@ bool LLAppViewer::mainLoop()
|
|||
{
|
||||
LLFastTimer _(FTM_FRAME);
|
||||
LLTrace::BlockTimer::nextFrame();
|
||||
LLTrace::get_frame_recording().nextPeriod();
|
||||
|
||||
LLTrace::getMasterThreadRecorder().pullFromSlaveThreads();
|
||||
|
||||
//clear call stack records
|
||||
|
|
@ -1352,8 +1354,6 @@ bool LLAppViewer::mainLoop()
|
|||
LLFloaterSnapshot::update(); // take snapshots
|
||||
gGLActive = FALSE;
|
||||
}
|
||||
|
||||
LLTrace::get_frame_recording().nextPeriod();
|
||||
}
|
||||
|
||||
pingMainloopTimeout("Main:Sleep");
|
||||
|
|
|
|||
Loading…
Reference in New Issue