Scarface, Vasudev and others who work with virtual machine programs (VMWare of VirtualBox). I'm not too clear the purpose of why we're given the option of assigning a number of cores to a VM. What's the purpose of this and why would they even ask it? As far as the host is concerned, a VM is a program like any other. I've never seen an option to assign cores to any other non-VM program.
Actually many programs are multithreaded, but there is no option to assign one or several cores and limit the use of the cpu. I think that's the case for the program Nicehash, used by shadow.97 to mine his/her bitcoins: it is using all the threads by default.
To make some of the game repacks, I used a compressor named lolz that has an option to use any number of threads. I never used it, one thread is generally enough. Note that if you are using some repacks and if you think there are better ways to repack them, let me know.