As I understand it, Calibre processes come in pairs; one process for conversion/download and one for adding saving. Since conversion, as you point out is far more compute intensive you need Calibre to start at least 4 processes in order to have two conversion processes running. I tried 6 and 8 ( 3 and 4 conversion processes) in order to to have at least one spare conversion process able to run when one of the others was idle, waiting for IO to complete.
The crude experiments I tried, showed that on a dual core machine that is idle except for Caliber running 3 conversion processes (6 calibre.parallel processes) kept the both cores running close to 100% until all the conversions were done.
One could run more than 6 processes but this adds overhead as the cores switch from process to process. 8 processes were a little slower than 6.