summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiaohong Bao <bao@lindenlab.com>2010-08-18 15:32:40 -0600
committerXiaohong Bao <bao@lindenlab.com>2010-08-18 15:32:40 -0600
commit116382fdf78ca578a74c30a162208033fd021124 (patch)
tree3518d4d2ddf7515e7f46f8d7bf5cd76905f346c5
parent104aec161e6675ed54b80f64766dea0555f7d175 (diff)
fixed for EXT-8963: investigate if Advanced > Run Multiple Threads should be on.
Removed "Run Multiple Threads" from the menu because we are not using it.
-rw-r--r--indra/newview/app_settings/settings.xml11
-rw-r--r--indra/newview/llappviewer.cpp41
-rw-r--r--indra/newview/skins/default/xui/en/menu_viewer.xml12
3 files changed, 15 insertions, 49 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 2130713d50..51ed26505e 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -8295,17 +8295,6 @@
<key>Value</key>
<real>1.0</real>
</map>
- <key>RunMultipleThreads</key>
- <map>
- <key>Comment</key>
- <string>If TRUE keep background threads active during render</string>
- <key>Persist</key>
- <integer>1</integer>
- <key>Type</key>
- <string>Boolean</string>
- <key>Value</key>
- <integer>0</integer>
- </map>
<key>SafeMode</key>
<map>
<key>Comment</key>
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 58b651ec39..d6ecb2f168 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -1108,8 +1108,7 @@ bool LLAppViewer::mainLoop()
{
LLMemType mt_sleep(LLMemType::MTYPE_SLEEP);
LLFastTimer t2(FTM_SLEEP);
- bool run_multiple_threads = gSavedSettings.getBOOL("RunMultipleThreads");
-
+
// yield some time to the os based on command line option
if(mYieldTime >= 0)
{
@@ -1147,9 +1146,7 @@ bool LLAppViewer::mainLoop()
}
static const F64 FRAME_SLOW_THRESHOLD = 0.5; //2 frames per seconds
- const F64 min_frame_time = 0.0; //(.0333 - .0010); // max video frame rate = 30 fps
- const F64 min_idle_time = 0.0; //(.0010); // min idle time = 1 ms
- const F64 max_idle_time = run_multiple_threads ? min_idle_time : llmin(.005*10.0*gFrameTimeSeconds, 0.005); // 5 ms a second
+ const F64 max_idle_time = llmin(.005*10.0*gFrameTimeSeconds, 0.005); // 5 ms a second
idleTimer.reset();
bool is_slow = (frameTimer.getElapsedTimeF64() > FRAME_SLOW_THRESHOLD) ;
S32 total_work_pending = 0;
@@ -1187,34 +1184,24 @@ bool LLAppViewer::mainLoop()
total_work_pending += work_pending ;
total_io_pending += io_pending ;
- F64 frame_time = frameTimer.getElapsedTimeF64();
- F64 idle_time = idleTimer.getElapsedTimeF64();
- if (frame_time >= min_frame_time &&
- idle_time >= min_idle_time &&
- (!work_pending || idle_time >= max_idle_time))
+
+ if (!work_pending || idleTimer.getElapsedTimeF64() >= max_idle_time)
{
break;
}
}
- // Prevent the worker threads from running while rendering.
- // if (LLThread::processorCount()==1) //pause() should only be required when on a single processor client...
- if (run_multiple_threads == FALSE)
+ if(!total_work_pending) //pause texture fetching threads if nothing to process.
{
- //LLFastTimer ftm(FTM_PAUSE_THREADS); //not necessary.
-
- if(!total_work_pending) //pause texture fetching threads if nothing to process.
- {
- LLAppViewer::getTextureCache()->pause();
- LLAppViewer::getImageDecodeThread()->pause();
- LLAppViewer::getTextureFetch()->pause();
- }
- if(!total_io_pending) //pause file threads if nothing to process.
- {
- LLVFSThread::sLocal->pause();
- LLLFSThread::sLocal->pause();
- }
- }
+ LLAppViewer::getTextureCache()->pause();
+ LLAppViewer::getImageDecodeThread()->pause();
+ LLAppViewer::getTextureFetch()->pause();
+ }
+ if(!total_io_pending) //pause file threads if nothing to process.
+ {
+ LLVFSThread::sLocal->pause();
+ LLLFSThread::sLocal->pause();
+ }
if ((LLStartUp::getStartupState() >= STATE_CLEANUP) &&
(frameTimer.getElapsedTimeF64() > FRAME_STALL_THRESHOLD))
diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml
index 63ff7047b4..2f6ecd8a34 100644
--- a/indra/newview/skins/default/xui/en/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/en/menu_viewer.xml
@@ -1393,17 +1393,7 @@
function="Advanced.ToggleFeature"
parameter="flexible" />
</menu_item_check>
- </menu>
- <menu_item_check
- label="Run Multiple Threads"
- name="Run Multiple Threads">
- <menu_item_check.on_check
- function="CheckControl"
- parameter="RunMultipleThreads" />
- <menu_item_check.on_click
- function="ToggleControl"
- parameter="RunMultipleThreads" />
- </menu_item_check>
+ </menu>
<menu_item_check
label="Use Plugin Read Thread"
name="Use Plugin Read Thread">