forked from Mirrorlandia_minetest/minetest
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.
This commit is contained in:
parent
eabfe091b5
commit
5c3546e459
@ -489,7 +489,7 @@ private:
|
|||||||
color(color)
|
color(color)
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
std::vector<Piece> m_log;
|
std::deque<Piece> m_log;
|
||||||
public:
|
public:
|
||||||
u32 m_log_max_size;
|
u32 m_log_max_size;
|
||||||
|
|
||||||
@ -512,7 +512,7 @@ public:
|
|||||||
{
|
{
|
||||||
std::map<std::string, Meta> m_meta;
|
std::map<std::string, Meta> m_meta;
|
||||||
|
|
||||||
for (std::vector<Piece>::const_iterator k = m_log.begin();
|
for (std::deque<Piece>::const_iterator k = m_log.begin();
|
||||||
k != m_log.end(); ++k) {
|
k != m_log.end(); ++k) {
|
||||||
const Piece &piece = *k;
|
const Piece &piece = *k;
|
||||||
|
|
||||||
@ -600,7 +600,7 @@ public:
|
|||||||
float lastscaledvalue = 0.0;
|
float lastscaledvalue = 0.0;
|
||||||
bool lastscaledvalue_exists = false;
|
bool lastscaledvalue_exists = false;
|
||||||
|
|
||||||
for (std::vector<Piece>::const_iterator j = m_log.begin();
|
for (std::deque<Piece>::const_iterator j = m_log.begin();
|
||||||
j != m_log.end(); ++j) {
|
j != m_log.end(); ++j) {
|
||||||
const Piece &piece = *j;
|
const Piece &piece = *j;
|
||||||
float value = 0;
|
float value = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user