CMU-CREATE-Lab / timemachine-creator

Tool for creating your own zoomable time lapses.
Other
2 stars 2 forks source link

ffmpeg is ran with 8 threads, not following the Parallel Jobs setting #5

Open kannes opened 4 years ago

kannes commented 4 years ago

In the GUI you can set a value for "Parallel Jobs".

When videos get encoded however, ffmpeg is ran with --threads 8 (probably with as many parallel instances as the Parallel Jobs setting value is).

Now I don't know the internals of this tool but I would suggest ffmpeg being run with a super conservative -threads 1 so it does not surprisingly use more cores than what the user set Parallel Jobs to.

rsargent commented 4 years ago

We measured performance to be better with --threads 8, and there didn't seem to be much downside even when there are more total threads than cores. Many jobs are I/O bound and not CPU bound, so many jobs use less than 1 core at any given time.

You mention a user being surprised if more cores are used instantaneously than the number of "Parallel Jobs". What's the practical problem? Is it something we could explain to the user with documentation or a short snippet next to the Parallel Jobs setting?

kannes commented 3 years ago

Sorry for the late reply: CPU starvation and thus the system not being usable for anything else anymore.