diff --git a/profiler/src/profiler/TracyView.hpp b/profiler/src/profiler/TracyView.hpp index 2f99bb09..ed562b63 100644 --- a/profiler/src/profiler/TracyView.hpp +++ b/profiler/src/profiler/TracyView.hpp @@ -667,6 +667,7 @@ private: size_t sortedNum = 0, selSortNum, selSortActive; float average, selAverage; float median, selMedian; + float p75, p90; int64_t total, selTotal; int64_t selTime; bool drawAvgMed = true; @@ -710,6 +711,8 @@ private: sortedNum = 0; average = 0; median = 0; + p75 = 0; + p90 = 0; total = 0; tmin = std::numeric_limits::max(); tmax = std::numeric_limits::min(); diff --git a/profiler/src/profiler/TracyView_FindZone.cpp b/profiler/src/profiler/TracyView_FindZone.cpp index b77d513a..ca4f3846 100644 --- a/profiler/src/profiler/TracyView_FindZone.cpp +++ b/profiler/src/profiler/TracyView_FindZone.cpp @@ -553,6 +553,8 @@ void View::DrawFindZone() { m_findZone.average = float( total ) / vsz; m_findZone.median = vec[vsz/2]; + m_findZone.p75 = vec[3 * (vsz / 4)]; + m_findZone.p90 = vec[vsz / 10 * 9]; m_findZone.total = total; m_findZone.sortedNum = i; m_findZone.tmin = tmin; @@ -972,6 +974,12 @@ void View::DrawFindZone() TextFocused( "Median:", TimeToString( m_findZone.median ) ); ImGui::SameLine(); ImGui::Spacing(); + TextFocused( "P75:", TimeToString( m_findZone.p75 ) ); + ImGui::SameLine(); + ImGui::Spacing(); + TextFocused( "P90:", TimeToString( m_findZone.p90 ) ); + ImGui::SameLine(); + ImGui::Spacing(); ImGui::SameLine(); { int64_t t0, t1;