nohup
não define nada para manter um processo em um núcleo específico. Você normalmente usa taskset
junto com nohup
para fazer isso. top
pode mostrar em qual núcleo um processo foi agendado pela última vez, é a coluna P
.
O agendamento de processos e threads cresceu bastante ao longo dos anos, porque há cada vez mais fatores a serem levados em conta: afinidade de CPU, afinidade de cache, manipulação de interrupções, envelopes de energia ... Mas eu não esperaria nenhuma surra se você está iniciando menos trabalhos do que os núcleos disponíveis, supondo que o sistema não esteja muito ocupado com outras tarefas. De maneira semelhante, você não pode realmente prever em qual CPU uma tarefa será executada, mas se for apropriada, é muito provável que o agendador a mantenha no mesmo núcleo assim que for escolhido um núcleo.