I am trying to make a small transcoding machine based on ffmpeg on a VM. So my question is do you think that doubling the amount of the physical cores would give me any benefit or I should stick to 1:1 vCPU core : physical CPU core. I have spoken with a friend and he is claiming that most of the video transcoding libraries are using the AVX instruction and since it is present once per core, it doesn't make sense to double the number of the virtual CPU cores. On top of that the hyperthreading should only increase around 30% so the effective power of a vCPU core where the number is doubled will be only 65% and that not all of them will have the AVX instruction.

It is somehow considered to double the amount the number of the physical CPU cores in the VM world, because of the hyperthreading, but this is not always accurate since the hyper threading is not providing you the same productivity.

Do you have any experience?

Thanks in advance.