O problema aqui é que seu programa não é projetado com computação baseada em multithreading ou multi processador . Por causa disso, o programa está usando totalmente , um dos (acho que) 2 núcleos da sua máquina.
Você pode verificar na guia gerenciador de tarefas " Desempenho " que uma das duas caixas está mostrando uso completo (100%) e um é baixo ?