Java Multithreading - Asigne hilos a los núcleos del procesador

Estoy escribiendo una aplicación en Java que involucra computación paralela. Mi pregunta es ¿cómo puedo asignar explícitamente hilos a núcleos? ¿Cuál es la lógica de programación para ello?

¿Alguien puede decir por qué se usa el ejecutor de clase? Gracia