Will Process switch between different cores to increase the performance?
Isso depende se o processo é um processo multi-threading ou não. O processo em si é basicamente apenas um "contêiner" para encadeamentos, ele precisa ter pelo menos um para ser executado. Cada thread pode usar um núcleo de CPU, portanto, se o seu processo tiver 2 threads (um GUI e um thread de trabalho), ele será executado em dois núcleos de CPU.
A questão "Processar comutador entre diferentes núcleos" não é exatamente correta porque essa comutação é agendada pelo sistema operacional (SO), NÃO pelo próprio processo!