From 5c3546e459ede7fbdfc22b340ed6b2af5073ec5b Mon Sep 17 00:00:00 2001 From: gregorycu Date: Mon, 2 Nov 2015 14:17:44 +1100 Subject: [PATCH] Speed up saving of profiling data by 27x On Windows Release x64 bit build this changes: ProfilerGraph::put 1.68% -> 0.061% ProfilerGraph::draw 12% -> 17.% So yes, there is a tradeoff between saving profiling data (executed always) and drawing the profiler graph (executed very rarely). But usually you don't have the profiler graph open. --- src/game.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/game.cpp b/src/game.cpp index df5ab701a..d74c1fa1d 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -489,7 +489,7 @@ private: color(color) {} }; - std::vector m_log; + std::deque m_log; public: u32 m_log_max_size; @@ -512,7 +512,7 @@ public: { std::map m_meta; - for (std::vector::const_iterator k = m_log.begin(); + for (std::deque::const_iterator k = m_log.begin(); k != m_log.end(); ++k) { const Piece &piece = *k; @@ -600,7 +600,7 @@ public: float lastscaledvalue = 0.0; bool lastscaledvalue_exists = false; - for (std::vector::const_iterator j = m_log.begin(); + for (std::deque::const_iterator j = m_log.begin(); j != m_log.end(); ++j) { const Piece &piece = *j; float value = 0; -- 2.25.1