diff --git a/indra/llcommon/llfasttimer.cpp b/indra/llcommon/llfasttimer.cpp
index e58c5c0f9842cc702668c40782049d45f9c97b09..ba626bcc32b9604a54c32e408b8d1c82c510fdd9 100644
--- a/indra/llcommon/llfasttimer.cpp
+++ b/indra/llcommon/llfasttimer.cpp
@@ -434,4 +434,12 @@ void TimeBlockAccumulator::reset( const TimeBlockAccumulator* other )
 	}
 }
 
+LLUnit<LLUnits::Seconds, F64> BlockTimer::getElapsedTime()
+{
+	U64 total_time = TimeBlock::getCPUClockCount64() - mStartTime;
+
+	return (F64)total_time / (F64)TimeBlock::countsPerSecond();
+}
+
+
 } // namespace LLTrace
diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h
index 726db70fbe7a743d6b83609ce73d7d08d2d9a24e..edbcb896b3e9df98ee74529a65ed52b8b3ef7c00 100644
--- a/indra/llcommon/llfasttimer.h
+++ b/indra/llcommon/llfasttimer.h
@@ -71,6 +71,8 @@ class BlockTimer
 	BlockTimer(TimeBlock& timer);
 	~BlockTimer();
 
+	LLUnit<LLUnits::Seconds, F64> getElapsedTime();
+
 private:
 
 	U64						mStartTime;