Whenever I render a video using the blender video editor only one core is ever used at any time. I have an 8 core CPU(FX-9590) yet regardless of whether blender is set to auto detect or a fixed 8 threads only one core ever sits at 100% at any given time. The rest of the cores sit and really low usage as if blender is completely ignoring them. I'm running blender 2.77a on Linux. I'm using Theora as the codec with an ogg container and Vorbis audio. How do I get blender to use all my cores?
-
$\begingroup$ I don't think that any work has been done to allow the VSE to take advantage of multiple CPU cores. Not sure if anyone has started or is planning to start working on that. $\endgroup$– samblerCommented Aug 27, 2016 at 10:20
-
1$\begingroup$ @sambler oh really? I would have thought it would be multi-threaded. That's kind of annoying especially seeing that I have an AMD CPU so my single threading performance leaves a little to be desired. $\endgroup$– ScooptaCommented Aug 27, 2016 at 22:17
-
$\begingroup$ Where is your question? $\endgroup$– SamothCommented Aug 29, 2016 at 11:04
-
$\begingroup$ @Samoth I added it. I forgot that stack exchange likes you to give an exact and specific question. $\endgroup$– ScooptaCommented Aug 29, 2016 at 17:08
3 Answers
First and foremost, there is a significant difference between multi-threading and multi-core. Depending on the task that needs to be processed, multiple threads are also possible on a single core.
Blender VSE got some improvements during the Gooseberry Project, unfortunately most of them were just cosmetics and multiple threads on multiple cores was not on the roadmap. AFAIK there's nothing planned to change that in the near future.
You can use Pulverize to do multi-process rendering from Blender's Video Sequence Editor:
https://github.com/sciactive/pulverize
Pulverize will render multiple parts of your video in separate processes, then concatenate them into one video file using FFMPEG. It uses the Blender command line to select frame ranges for each render.
-
$\begingroup$ Good find, but please avoid link only answers here, these are discouraged because if the link goes down your answer becomes empty and invalid for future users. Please edit your question and write something providing some details about what the addon is, what it does or how to use it. $\endgroup$ Commented Feb 21, 2017 at 3:28
-
2$\begingroup$ Done. :) I added a short description of how Pulverize works. $\endgroup$ Commented Feb 21, 2017 at 3:32
There is a Python script that splits video then renders it on mulitple cores and then stitches result.
https://github.com/mikeycal/the-video-editors-render-script-for-blender
Author says it is cross platform.