After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 681548 - Show multi core / thread CPU usage when rendering
Show multi core / thread CPU usage when rendering
Status: RESOLVED OBSOLETE
Product: pitivi
Classification: Other
Component: Rendering
Git
Other Linux
: Normal enhancement
: 1.2
Assigned To: Jean-François Fortin Tam
Pitivi maintainers
Depends on:
Blocks:
 
 
Reported: 2012-08-09 18:36 UTC by Jean-François Fortin Tam
Modified: 2015-10-20 13:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
screenshot (19.17 KB, image/png)
2012-09-20 15:46 UTC, Jean-François Fortin Tam
Details

Description Jean-François Fortin Tam 2012-08-09 18:36:37 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.
Comment 1 Jean-François Fortin Tam 2012-09-20 15:46:36 UTC
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.
Comment 2 Jean-François Fortin Tam 2014-03-14 18:22:18 UTC
<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.).
Comment 3 Jean-François Fortin Tam 2014-03-14 18:36:21 UTC
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)
Comment 4 Thibault Saunier 2015-10-20 13:24:06 UTC
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.