GNOME Bugzilla – Bug 681548
Show multi core / thread CPU usage when rendering
Last modified: 2015-10-20 13:24:06 UTC
When rendering, I love to watch my CPU burn. Rather, I like to have a visual confirmation that it is being used to its full potential. I proof-of-concept code ready for this. It will require GTK+ 3.6 for http://developer.gnome.org/gtk3/unstable/GtkLevelBar.html However, the initial implementation can use ProgressBar widgets. Interesting side-effects: - Users will stop complaining that Pitivi is slow at rendering when they can visually see that their encoder choice doesn't use all the CPU cores (bug #667653), or that it actually *does* use all the CPU cores ("hey, that looks like an expensive operation!") - If the render hangs, the CPU usage will drop to zero... a clearer indication that something went wrong.
Created attachment 224845 [details] screenshot This screenshot demonstrates that my proof of concept code (that uses gtk levelbar widgets when gtk 3.6 is available) works.
<nekohayo> I'm kind of undecided about if it's a good idea of a feature - what do you think? Is it actually useful? <aleb> I think a "CPUs: [===] [===] [===] [===]" line in the render dialog would be nice, or "CPU utilization: x%" --------- I wasn't sure if this feature would be appreciated since nobody else had commented, and we have to be careful to avoid crossing the line into UI featuritis. An less intrusive representation could be simply a label that appears only when there are CPUs/cores with <50% usage: "Suboptimal setting detected: only 1 of 4 CPUs are in use. [?]" This label could be shown on the right of the "Estimated filesize" label, or below the informational text about performance (above the progressbar). It would be shown with a clickable symbolic help ("?") button that opens up the relevant page of the user manual explaining everything (why this happens, how to solve it if solvable, etc.).
As a second step of this implementation, we could have a heuristic that not only looks at CPU usage, but also checks if the filesize has grown; if there is not even a single processor/thread at 80%+ usage and filesize does not grow, we could show a different label (or an error infobar, but that complexifies stuff a bit): "Uh oh! No significant CPU activity detected. The render might be stuck. [?]" (there's of course the argument that "this should never happen, this is just putting a pretty face on the problem"... but hey, defensive coding! it's better than users sitting in front of the thing for 12 hours thinking it's still working)
This bug has been migrated to https://phabricator.freedesktop.org/T2967. Please use the Phabricator interface to report further bugs by creating a task and associating it with Project: Pitivi. See http://wiki.pitivi.org/wiki/Bug_reporting for details.