Can I run multiple (2-3) instances of Pix4D to process different projects simultaneously? Since some processes in Pix4D during step 1 and 2 cannot run in parallel and I see idling computing resources, will it help to use available resources more effective?
Pix4D cannot do distributed processing over multiple computers. However it is optimized to take advantage of Multi-Core and Multi-Processors.
But it is possible to:
- Process faster by reducing the processing options (generating less 3D points): https://support.pix4d.com/hc/en-us/articles/202560419.
- Divide the dataset in several sub projects, process the sub projects in different computers and merge them (same instructions than for processing large datasets): https://support.pix4d.com/hc/en-us/articles/202558579.
By default the software will use all the Cores and all the available RAM memory, it is possible to assign how many Cores to use for Processing and how much RAM: https://support.pix4d.com/hc/en-us/articles/202560199.
I’m afraid I was not clear enough and that led to a misunderstanding. My question was not to use multiple PCs to process a SINGLE Pix4D project. To the contrary, I think running multiple instances of Pix4D on the SAME PC processing DIFFERENT projects may increase the use of available resources. Am I wrong?
Some sub parts of the step 1 cannot be paralleled, but some others yes.
If the projects overpass the optimal resources for each project one of the project, then at the end the result can be a slower processing or even failure when processing one of them.
If you have much more resources than the project request or if you have more resources then the project request plus 2 graphic card), then you can assign 1/2 resources in the Processing options (tab Resources) and the process.
Or assign 60-80% of the resources to each project (and one graphic card to each project), start one project, and then after some time, start the second one, so they do not use same resources at the same.
How can I put many processes (instances) at the same time? (with your suggested timing between them)
It is not recommended to process in many instances on the same device. Pix4Dmapper will use all the available resources and if there are two instances running, this can cause conflicts in the allocation of the resources. On top of that, processing on two instances will not process faster necessarily.
Your response actually means that:
Pix4Dmapper program logic is not tailored to use PC resources efficiently. At one point it may keep a PC almost idling with 2-3% of CPU and Memory usage and later load up all available resources till they fail.
“Maximum Resources Available for Processing” sliders do not function as intended. I have noted that before, that even if I set the limits of PC resources to be used for processing Pix4Dmapper ignores those limits and loads my system to its top.
Indeed, there are few parts of the processing for which all the resources available are used, independently of the “Maximum Resources Available for Processing” selected. On the other hand, we have paralleled many computations and there are only few parts of the processing that are not paralleled, during which, not all the cores/CPUs are used.
Having said that, we do try to improve and optimize processing and handling the resources.