From c180fe2ae2b5d2e00149f9902717e02ed7042143 Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Mon, 19 Nov 2012 22:28:12 -0700 Subject: for SH-3561: capture the frame buffer contents and compare pixel differences between frames. --- indra/newview/llscenemonitor.h | 87 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 indra/newview/llscenemonitor.h (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h new file mode 100644 index 0000000000..941039cefd --- /dev/null +++ b/indra/newview/llscenemonitor.h @@ -0,0 +1,87 @@ +/** + * @file llscenemonitor.h + * @brief monitor the process of scene loading + * + * $LicenseInfo:firstyear=2003&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLSCENE_MONITOR_H +#define LL_LLSCENE_MONITOR_H + +#include "llsingleton.h" +#include "llmath.h" +#include "llfloater.h" +#include "llcharacter.h" + +class LLCharacter; +class LLRenderTarget; + +class LLSceneMonitor : public LLSingleton +{ +public: + LLSceneMonitor(); + ~LLSceneMonitor(); + + void destroyClass(); + + void freezeAvatar(LLCharacter* avatarp); + void setEnabled(bool enabled); + + void capture(); //capture the main frame buffer + void compare(); //compare the stored two buffers. + + LLRenderTarget* getDiffTarget() const; + bool isEnabled()const {return mEnabled;} + +private: + void freezeScene(); + void unfreezeScene(); + void reset(); + bool preCapture(); + void postCapture(); + +private: + BOOL mEnabled; + BOOL mNeedsUpdateDiff; + LLRenderTarget* mFrames[2]; + LLRenderTarget* mDiff; + LLRenderTarget* mCurTarget; + + std::vector mAvatarPauseHandles; +}; + +class LLSceneMonitorView : public LLFloater +{ +public: + LLSceneMonitorView(const LLRect& rect); + + virtual void draw(); + virtual void setVisible(BOOL visible); + +protected: + virtual void onClickCloseBtn(); +}; + +extern LLSceneMonitorView* gSceneMonitorView; + +#endif + -- cgit v1.2.3 From 6ae6abae26200c80a15d2e2d899ae6970602ff04 Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Wed, 21 Nov 2012 13:29:15 -0700 Subject: more for SH-3571: display frame-to-frame pixel differences on screen --- indra/newview/llscenemonitor.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 941039cefd..648429f97b 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -44,7 +44,7 @@ public: void destroyClass(); void freezeAvatar(LLCharacter* avatarp); - void setEnabled(bool enabled); + void setDebugViewerVisible(BOOL visible); void capture(); //capture the main frame buffer void compare(); //compare the stored two buffers. @@ -62,6 +62,8 @@ private: private: BOOL mEnabled; BOOL mNeedsUpdateDiff; + BOOL mDebugViewerVisible; + LLRenderTarget* mFrames[2]; LLRenderTarget* mDiff; LLRenderTarget* mCurTarget; -- cgit v1.2.3 From 21409a3aaaef71102195d65fc35cebdb5d941a26 Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Fri, 30 Nov 2012 22:50:06 -0700 Subject: for SH-3350 and SH-3353: Report frame-to-frame visual deltas as an LLStat --- indra/newview/llscenemonitor.h | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 648429f97b..db5ac3eeef 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -48,8 +48,14 @@ public: void capture(); //capture the main frame buffer void compare(); //compare the stored two buffers. + void queryDiff(); + void fetchQueryResult(); + void calcDiffAggregate(); + void setDiffTolerance(F32 tol) {mDiffTolerance = tol;} - LLRenderTarget* getDiffTarget() const; + const LLRenderTarget* getDiffTarget() const {return mDiff;} + F32 getDiffTolerance() const {return mDiffTolerance;} + F32 getDiffResult() const { return mDiffResult;} bool isEnabled()const {return mEnabled;} private: @@ -57,17 +63,22 @@ private: void unfreezeScene(); void reset(); bool preCapture(); - void postCapture(); - + private: BOOL mEnabled; BOOL mNeedsUpdateDiff; + BOOL mHasNewDiff; + BOOL mHasNewQueryResult; BOOL mDebugViewerVisible; LLRenderTarget* mFrames[2]; LLRenderTarget* mDiff; LLRenderTarget* mCurTarget; + GLuint mQueryObject; //used for glQuery + F32 mDiffResult; //aggregate results of mDiff. + F32 mDiffTolerance; //pixels are filtered out when R+G+B < mDiffTolerance + std::vector mAvatarPauseHandles; }; -- cgit v1.2.3 From 0270ce079c2090cd25244516648ac1691db00a0d Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Sun, 2 Dec 2012 22:12:43 -0700 Subject: more for SH-3350, add debug texts --- indra/newview/llscenemonitor.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index db5ac3eeef..ce25467a21 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -56,6 +56,8 @@ public: const LLRenderTarget* getDiffTarget() const {return mDiff;} F32 getDiffTolerance() const {return mDiffTolerance;} F32 getDiffResult() const { return mDiffResult;} + F32 getSamplingTime() const { return mSamplingTime;} + F32 getDiffPixelRatio() const { return mDiffPixelRatio;} bool isEnabled()const {return mEnabled;} private: @@ -79,6 +81,9 @@ private: F32 mDiffResult; //aggregate results of mDiff. F32 mDiffTolerance; //pixels are filtered out when R+G+B < mDiffTolerance + F32 mSamplingTime; //time interval to capture frames, in seconds + F32 mDiffPixelRatio; //ratio of pixels used for comparison against the original mDiff size along one dimension + std::vector mAvatarPauseHandles; }; -- cgit v1.2.3 From 1fbd45672fcb1e5bfc194712fc7d0d4847a651cd Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Wed, 19 Dec 2012 23:21:31 -0700 Subject: fix for SH-3640: Can not edit objects --- indra/newview/llscenemonitor.h | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index ce25467a21..02e3d57d46 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -59,6 +59,7 @@ public: F32 getSamplingTime() const { return mSamplingTime;} F32 getDiffPixelRatio() const { return mDiffPixelRatio;} bool isEnabled()const {return mEnabled;} + bool needsUpdate() const; private: void freezeScene(); -- cgit v1.2.3 From 1f507c3cfca0c7722ebeaf71883fbaa83988e1a9 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Thu, 21 Mar 2013 00:37:20 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics copied over scene load frame differencing changes from viewer-interesting made periodicrecording flexible enough to allow for indefinite number of periods added scene loading stats floater fixed collapsing behavior of container views --- indra/newview/llscenemonitor.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 02e3d57d46..709650e206 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -31,9 +31,11 @@ #include "llmath.h" #include "llfloater.h" #include "llcharacter.h" +#include "lltracerecording.h" class LLCharacter; class LLRenderTarget; +class LLViewerTexture; class LLSceneMonitor : public LLSingleton { @@ -61,11 +63,14 @@ public: bool isEnabled()const {return mEnabled;} bool needsUpdate() const; + LLTrace::ExtendableRecording* getRecording() const {return mRecording;} + private: void freezeScene(); void unfreezeScene(); void reset(); bool preCapture(); + void generateDitheringTexture(S32 width, S32 height); private: BOOL mEnabled; @@ -85,7 +90,15 @@ private: F32 mSamplingTime; //time interval to capture frames, in seconds F32 mDiffPixelRatio; //ratio of pixels used for comparison against the original mDiff size along one dimension + LLPointer mDitheringTexture; + S32 mDitherMatrixWidth; + F32 mDitherScale; + F32 mDitherScaleS; + F32 mDitherScaleT; + std::vector mAvatarPauseHandles; + + LLTrace::ExtendableRecording* mRecording; }; class LLSceneMonitorView : public LLFloater -- cgit v1.2.3 From 268ea2902d1108a1b30909340ca10ee0bea9f147 Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Mon, 25 Mar 2013 21:23:59 -0600 Subject: for SH-3833: dump frame diff values from the scene loading monitor to a log file --- indra/newview/llscenemonitor.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 709650e206..b2bc4763cf 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -64,6 +64,8 @@ public: bool needsUpdate() const; LLTrace::ExtendableRecording* getRecording() const {return mRecording;} + void dumpToFile(std::string file_name); + bool hasResults() const { return !mMonitorResults.empty();} private: void freezeScene(); @@ -72,6 +74,7 @@ private: bool preCapture(); void generateDitheringTexture(S32 width, S32 height); + void addMonitorResult(); private: BOOL mEnabled; BOOL mNeedsUpdateDiff; @@ -99,6 +102,14 @@ private: std::vector mAvatarPauseHandles; LLTrace::ExtendableRecording* mRecording; + + //--------------------------------------- + typedef struct _monitor_result + { + F32 mTimeStamp; + F32 mDiff; + } ll_monitor_result_t; + std::vector mMonitorResults; }; class LLSceneMonitorView : public LLFloater -- cgit v1.2.3 From 164273afbb8131c5961266b7cb2c1e1d7973ea0b Mon Sep 17 00:00:00 2001 From: Xiaohong Bao Date: Thu, 4 Apr 2013 16:47:36 -0600 Subject: fix some warnings caused by scenen loading monitoring when quit viewer. --- indra/newview/llscenemonitor.h | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index b2bc4763cf..c897b237b6 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -81,6 +81,7 @@ private: BOOL mHasNewDiff; BOOL mHasNewQueryResult; BOOL mDebugViewerVisible; + BOOL mQuitting; LLRenderTarget* mFrames[2]; LLRenderTarget* mDiff; -- cgit v1.2.3 From c6737163854981d94fde8bdd440eaf4bbc816b4f Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Tue, 23 Apr 2013 18:52:34 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics convert scene monitor to use extendable periodic recording --- indra/newview/llscenemonitor.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index c897b237b6..45a5241924 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -63,7 +63,7 @@ public: bool isEnabled()const {return mEnabled;} bool needsUpdate() const; - LLTrace::ExtendableRecording* getRecording() const {return mRecording;} + LLTrace::ExtendablePeriodicRecording* getRecording() const {return mRecording;} void dumpToFile(std::string file_name); bool hasResults() const { return !mMonitorResults.empty();} @@ -102,7 +102,7 @@ private: std::vector mAvatarPauseHandles; - LLTrace::ExtendableRecording* mRecording; + LLTrace::ExtendablePeriodicRecording* mRecording; //--------------------------------------- typedef struct _monitor_result -- cgit v1.2.3 From 3a0e45ff088278cba5314974be6539b05009b8da Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 10 May 2013 17:57:12 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics renamed LLView::handleVisibilityChange to onVisibilityChange to reflect standard naming conventions for handlers vs. reactors --- indra/newview/llscenemonitor.h | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 45a5241924..08d2335a90 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -46,7 +46,7 @@ public: void destroyClass(); void freezeAvatar(LLCharacter* avatarp); - void setDebugViewerVisible(BOOL visible); + void setDebugViewerVisible(bool visible); void capture(); //capture the main frame buffer void compare(); //compare the stored two buffers. @@ -58,7 +58,6 @@ public: const LLRenderTarget* getDiffTarget() const {return mDiff;} F32 getDiffTolerance() const {return mDiffTolerance;} F32 getDiffResult() const { return mDiffResult;} - F32 getSamplingTime() const { return mSamplingTime;} F32 getDiffPixelRatio() const { return mDiffPixelRatio;} bool isEnabled()const {return mEnabled;} bool needsUpdate() const; @@ -71,27 +70,25 @@ private: void freezeScene(); void unfreezeScene(); void reset(); - bool preCapture(); + LLRenderTarget& getCaptureTarget(); void generateDitheringTexture(S32 width, S32 height); void addMonitorResult(); private: - BOOL mEnabled; - BOOL mNeedsUpdateDiff; - BOOL mHasNewDiff; - BOOL mHasNewQueryResult; - BOOL mDebugViewerVisible; - BOOL mQuitting; + bool mEnabled; + bool mNeedsUpdateDiff; + bool mHasNewDiff; + bool mHasNewQueryResult; + bool mDebugViewerVisible; + bool mQuitting; LLRenderTarget* mFrames[2]; LLRenderTarget* mDiff; - LLRenderTarget* mCurTarget; GLuint mQueryObject; //used for glQuery F32 mDiffResult; //aggregate results of mDiff. F32 mDiffTolerance; //pixels are filtered out when R+G+B < mDiffTolerance - F32 mSamplingTime; //time interval to capture frames, in seconds F32 mDiffPixelRatio; //ratio of pixels used for comparison against the original mDiff size along one dimension LLPointer mDitheringTexture; @@ -119,7 +116,8 @@ public: LLSceneMonitorView(const LLRect& rect); virtual void draw(); - virtual void setVisible(BOOL visible); + + virtual void onVisibilityChange(BOOL visible); protected: virtual void onClickCloseBtn(); -- cgit v1.2.3 From 405aa5b1ba7b786da05136fc9cc1f0a664111ce8 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Mon, 13 May 2013 11:04:10 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics added log output for scene monitoring --- indra/newview/llscenemonitor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 08d2335a90..6dccbbe335 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -39,6 +39,7 @@ class LLViewerTexture; class LLSceneMonitor : public LLSingleton { + LOG_CLASS(LLSceneMonitor); public: LLSceneMonitor(); ~LLSceneMonitor(); @@ -50,7 +51,6 @@ public: void capture(); //capture the main frame buffer void compare(); //compare the stored two buffers. - void queryDiff(); void fetchQueryResult(); void calcDiffAggregate(); void setDiffTolerance(F32 tol) {mDiffTolerance = tol;} -- cgit v1.2.3 From 12c34dc30f0cb6270c11e100fcaceb3fa6b27e81 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Thu, 16 May 2013 00:53:01 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics renamed LLView::handleVisibilityChange to onVisibilityChange to reflect cleaned up scene monitor stats recording, now all trace stats dumped to csv also fixed extendablerecording, periodicrecording, etc. to properly implement start/stop/etc --- indra/newview/llscenemonitor.h | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 6dccbbe335..f43c455f2f 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -64,7 +64,7 @@ public: LLTrace::ExtendablePeriodicRecording* getRecording() const {return mRecording;} void dumpToFile(std::string file_name); - bool hasResults() const { return !mMonitorResults.empty();} + bool hasResults() const { return mRecording->getAcceptedRecording().getDuration() != 0;} private: void freezeScene(); @@ -76,11 +76,16 @@ private: void addMonitorResult(); private: bool mEnabled; - bool mNeedsUpdateDiff; - bool mHasNewDiff; - bool mHasNewQueryResult; bool mDebugViewerVisible; - bool mQuitting; + + enum EDiffState + { + WAITING_FOR_NEXT_DIFF, + NEED_DIFF, + EXECUTE_DIFF, + WAIT_ON_RESULT, + VIEWER_QUITTING + } mDiffState; LLRenderTarget* mFrames[2]; LLRenderTarget* mDiff; -- cgit v1.2.3 From e8daeb177deccff29182ee97c143b0350e8c727c Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 22 May 2013 21:19:46 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics clean up of llscenemonitor.cpp --- indra/newview/llscenemonitor.h | 9 --------- 1 file changed, 9 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index f43c455f2f..3351ed0579 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -73,7 +73,6 @@ private: LLRenderTarget& getCaptureTarget(); void generateDitheringTexture(S32 width, S32 height); - void addMonitorResult(); private: bool mEnabled; bool mDebugViewerVisible; @@ -105,14 +104,6 @@ private: std::vector mAvatarPauseHandles; LLTrace::ExtendablePeriodicRecording* mRecording; - - //--------------------------------------- - typedef struct _monitor_result - { - F32 mTimeStamp; - F32 mDiff; - } ll_monitor_result_t; - std::vector mMonitorResults; }; class LLSceneMonitorView : public LLFloater -- cgit v1.2.3 From 9def3590f41dee3cba7760e4443fdc71f5fb2db6 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 31 May 2013 16:01:46 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics fixed multithreading lltrace causing values to be interpolated towards 0 added Radians unit improved sceneloadmonitor restart heuristic to use accumulated camera motion --- indra/newview/llscenemonitor.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 3351ed0579..6af58b707a 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -44,8 +44,6 @@ public: LLSceneMonitor(); ~LLSceneMonitor(); - void destroyClass(); - void freezeAvatar(LLCharacter* avatarp); void setDebugViewerVisible(bool visible); @@ -62,9 +60,9 @@ public: bool isEnabled()const {return mEnabled;} bool needsUpdate() const; - LLTrace::ExtendablePeriodicRecording* getRecording() const {return mRecording;} + const LLTrace::ExtendablePeriodicRecording* getRecording() const {return &mSceneLoadRecording;} void dumpToFile(std::string file_name); - bool hasResults() const { return mRecording->getAcceptedRecording().getDuration() != 0;} + bool hasResults() const { return mSceneLoadRecording.getAcceptedRecording().getDuration() != 0;} private: void freezeScene(); @@ -103,7 +101,8 @@ private: std::vector mAvatarPauseHandles; - LLTrace::ExtendablePeriodicRecording* mRecording; + LLTrace::ExtendablePeriodicRecording mSceneLoadRecording; + LLTrace::Recording mMonitorRecording; }; class LLSceneMonitorView : public LLFloater -- cgit v1.2.3 From 3fe19d883d2856cd7d104810b794eee82d642a3e Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 19 Jun 2013 20:30:41 -0700 Subject: SH-3931 WIP Interesting: Add graphs to visualize scene load metrics scene monitor output is cleaned up, no duplicate first frame, less scientific notation periodic recording extension now works more cleanly --- indra/newview/llscenemonitor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 6af58b707a..9717310da4 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -37,7 +37,7 @@ class LLCharacter; class LLRenderTarget; class LLViewerTexture; -class LLSceneMonitor : public LLSingleton +class LLSceneMonitor : public LLSingleton { LOG_CLASS(LLSceneMonitor); public: -- cgit v1.2.3 From 11e14cd3b0f58225a96b9b7a9839a7f030fe4045 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Mon, 15 Jul 2013 11:05:57 -0700 Subject: SH-4299Interesting: High fps shown temporarily off scale in statistics console various fixes to lltrace start() on started recording no longer resets fixed various instances of unit forgetfullness in lltrace recording split now has gapless timing scene monitor now guarantees min sample time renamed a bunch of stats added names to debug thread view on windows --- indra/newview/llscenemonitor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 9717310da4..7088d529d6 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -62,7 +62,7 @@ public: const LLTrace::ExtendablePeriodicRecording* getRecording() const {return &mSceneLoadRecording;} void dumpToFile(std::string file_name); - bool hasResults() const { return mSceneLoadRecording.getAcceptedRecording().getDuration() != 0;} + bool hasResults() const { return mSceneLoadRecording.getResults().getDuration() != 0;} private: void freezeScene(); -- cgit v1.2.3 From e40065f82c797eab41006a448c838f4f1089a2e8 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 19 Jul 2013 15:03:05 -0700 Subject: BUILDFIX: #include and dependency cleanup --- indra/newview/llscenemonitor.h | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index 7088d529d6..b857389243 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -72,8 +72,8 @@ private: void generateDitheringTexture(S32 width, S32 height); private: - bool mEnabled; - bool mDebugViewerVisible; + bool mEnabled, + mDebugViewerVisible; enum EDiffState { @@ -82,27 +82,27 @@ private: EXECUTE_DIFF, WAIT_ON_RESULT, VIEWER_QUITTING - } mDiffState; + } mDiffState; - LLRenderTarget* mFrames[2]; - LLRenderTarget* mDiff; + LLRenderTarget* mFrames[2]; + LLRenderTarget* mDiff; - GLuint mQueryObject; //used for glQuery - F32 mDiffResult; //aggregate results of mDiff. - F32 mDiffTolerance; //pixels are filtered out when R+G+B < mDiffTolerance + GLuint mQueryObject; //used for glQuery + F32 mDiffResult, //aggregate results of mDiff. + mDiffTolerance, //pixels are filtered out when R+G+B < mDiffTolerance + mDiffPixelRatio; //ratio of pixels used for comparison against the original mDiff size along one dimension - F32 mDiffPixelRatio; //ratio of pixels used for comparison against the original mDiff size along one dimension + LLPointer mDitheringTexture; + S32 mDitherMatrixWidth; + F32 mDitherScale, + mDitherScaleS, + mDitherScaleT; - LLPointer mDitheringTexture; - S32 mDitherMatrixWidth; - F32 mDitherScale; - F32 mDitherScaleS; - F32 mDitherScaleT; + std::vector mAvatarPauseHandles; - std::vector mAvatarPauseHandles; - - LLTrace::ExtendablePeriodicRecording mSceneLoadRecording; - LLTrace::Recording mMonitorRecording; + LLFrameTimer mRecordingTimer; + LLTrace::ExtendablePeriodicRecording mSceneLoadRecording; + LLTrace::Recording mMonitorRecording; }; class LLSceneMonitorView : public LLFloater -- cgit v1.2.3 From 4ff19b8f63f3814e98049064254323716f0fd422 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Sat, 20 Jul 2013 09:41:55 -0700 Subject: removed debug spam fast timer data now resets on login --- indra/newview/llscenemonitor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index b857389243..f94232e536 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -100,7 +100,7 @@ private: std::vector mAvatarPauseHandles; - LLFrameTimer mRecordingTimer; + LLTimer mRecordingTimer; LLTrace::ExtendablePeriodicRecording mSceneLoadRecording; LLTrace::Recording mMonitorRecording; }; -- cgit v1.2.3 From 612892b45a3413b16e40c49d3bfde77a4ca927fd Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Sun, 18 Aug 2013 22:30:27 -0700 Subject: SH-4433 WIP: Interesting: Statistics > Ping Sim is always 0 ms continued conversion to units system made units perform type promotion correctly and preserve type in arithmetic e.g. can now do LLVector3 in units added typedefs for remaining common unit types, including implicits --- indra/newview/llscenemonitor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index f94232e536..c99ec1e824 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -62,7 +62,7 @@ public: const LLTrace::ExtendablePeriodicRecording* getRecording() const {return &mSceneLoadRecording;} void dumpToFile(std::string file_name); - bool hasResults() const { return mSceneLoadRecording.getResults().getDuration() != 0;} + bool hasResults() const { return mSceneLoadRecording.getResults().getDuration() != S32Seconds(0);} private: void freezeScene(); -- cgit v1.2.3 From 6ddfc8031c73f342cf8459445a20cd50ceb3efba Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Tue, 12 Nov 2013 11:42:06 -0800 Subject: BUILDFIX - miscellaneous stuff missed in the merge --- indra/newview/llscenemonitor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra/newview/llscenemonitor.h') diff --git a/indra/newview/llscenemonitor.h b/indra/newview/llscenemonitor.h index c99ec1e824..e9ceb2aa2a 100644 --- a/indra/newview/llscenemonitor.h +++ b/indra/newview/llscenemonitor.h @@ -115,7 +115,7 @@ public: virtual void onVisibilityChange(BOOL visible); protected: - virtual void onClickCloseBtn(); + virtual void onClose(bool app_quitting=false); }; extern LLSceneMonitorView* gSceneMonitorView; -- cgit v1.2.3