Cool VL Viewer forum

View unanswered posts | View active topics It is currently 2025-08-08 12:36:43



Reply to topic  [ 3 posts ] 
Multiple Cores 
Author Message

Joined: 2011-09-28 09:44:46
Posts: 2
Reply with quote
When I run the latest LL v2.xx viewer in Windows (XP and 7) on an AMD dual-core or an AMD quad-core machine the cpu usage (via Task Manager) is evenly averaged out across all cores. But when I run Cool VL Viewer on those same machines there is always one core that is running at 100%. I believe that the video stuttering/jittering I am experiencing with the Cool VL Viewer is related to that one core being maxed out at 100% as I do not experience this when using the LL viewer. The video in the LL viewer is always nice and smooth.

I've toggled debug "RunMultipleCores" and Nvidia "Threaded Optimization" settings with no changes in cpu usage across the cores. Is there a way to evenly distribute cpu usage across all cores when using the Cool VL Viewer?

Thanks,
Jenna


2011-09-28 10:09:21
Profile

Joined: 2009-03-17 18:42:51
Posts: 6028
Reply with quote
JennaP wrote:
When I run the latest LL v2.xx viewer in Windows (XP and 7) on an AMD dual-core or an AMD quad-core machine the cpu usage (via Task Manager) is evenly averaged out across all cores.
Which means the OS looses its time doing cross-core context changes... Not the best way to squeeze out the highest performances from your CPU... Under Linux, whatever the viewer, it always use 100% of one CPU core for the main loop and renderer and a few percents (may yet climb up to 100% of a second core during texture decoding after a TP to a new sim, for example) of the other cores for background threads (texture caching and decoding, network threaded requests and corresponding non-blocking DNS requests, etc).

Quote:
But when I run Cool VL Viewer on those same machines there is always one core that is running at 100%.
Which is normal, really...

Quote:
I believe that the video stuttering/jittering I am experiencing with the Cool VL Viewer is related to that one core being maxed out at 100% as I do not experience this when using the LL viewer. The video in the LL viewer is always nice and smooth.
Really ?... I don't see any difference here, under Linux... Oh, yes, there is one *big* difference: when clearing part of the texture cache to make room in it, instead of "hanging" during one or two full seconds like with LL's viewers (v1/2/3), the Cool VL Viewer uses a time-sliced cache purging, which only results in several tiny "pauses" of less than 0.1s each time, as it clear the textures in small batches. If you don't like it, you can disable it in Advanced -> Caches -> "Time-Sliced Texture Cache Purges".

Also, in Advanced -> Network, you can enable "Multi-Threaded Curl", which is enabled by default in newest v3 viewers and disabled by default in the latest Cool VL Viewer releases (it caused crashes on some Windows system but should now work just fine in both v1.26.1.8 and v1.26.0.20). This option has been reported to make the viewer run smoothly on some Windows systems.

Quote:
I've toggled debug "RunMultipleCores"
There's no such option... It's not the user application that can decide whether or not it will use multiple cores and how many, it's the OS. The application can only be written in a threaded way so that it's easier for the OS to spread its code over several cores. I guess you meant "RunMultipleThreads" instead.

Quote:
and Nvidia "Threaded Optimization" settings with no changes in cpu usage across the cores. Is there a way to evenly distribute cpu usage across all cores when using the Cool VL Viewer?
Do *not* do that !... It will most probably cause bad things to happen. The video driver should let the applications decide whether they want to and, most important, can use threads or not: to be thread-safe and prevent crashes, the application code must follow precise rules and forcing threading, even within the video driver code, is the cause of much havoc when the application is not designed to be thread safe. In the viewer, only some parts of the code (that are designed to run as threads) are thread-safe, and certainly not the main loop during which rendering happens.


2011-09-28 12:02:19
Profile WWW

Joined: 2011-09-28 09:44:46
Posts: 2
Reply with quote
Enabling Multi-Threaded Curl smoothed out the video for me. That was exactly what I needed to do.

Thanks,
Jenna


2011-09-29 17:30:39
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 3 posts ] 

Who is online

Users browsing this forum: No registered users and 8 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.