O processo alterna entre diferentes núcleos?

O processo alterna entre diferentes núcleos?

Um processo alternará entre diferentes núcleos para aumentar o desempenho? Se o processo saltar entre os núcleos, quais componentes serão compartilhados entre os núcleos? Cache, registros ou memória L1-L3?

Responder1

Vamos imaginar uma CPU única ocupada com sistema de 2 núcleos, onde a carga está próxima de 100%.

Um processo com PID 1234 possui apenas um thread (por exemplo, aplicativo de console fazendo compactação de áudio monothread).

Para esse tipo de processo, o sistema tentará ao máximo executar o thread no mesmo núcleo, para minimizar falhas de cache. No entanto, se o sistema estiver muito ocupado, outros processos semelhantes também poderão tentar ser executados nos mesmos núcleos. Nesse caso, em princípio, seu processo de thread único pode ser executado primeiro no núcleo nº 1, depois no núcleo nº 2 e assim por diante.

Responder2

O Process alternará entre diferentes núcleos para aumentar o desempenho?

Isso depende se o processo é multithread ou não. O processo em si é basicamente apenas um “contêiner” para threads, ele precisa ter pelo menos um para rodar. Cada thread pode usar um núcleo de CPU, portanto, se o seu processo tiver 2 threads (uma GUI e um thread de trabalho), ele será executado em 2 núcleos de CPU.

A pergunta "o processo alternará entre núcleos diferentes" não é exatamente correta porque essa alternância é agendada pelo sistema operacional (SO), NÃO pelo processo em si!

Responder3

A troca de processos entre CPUs prejudicará o desempenho, porque a troca significará armazenar as informações e registros do processo na memória e, em seguida, carregá-los na outra CPU.

Esses comandos de armazenamento e carregamento estão entre os comandos mais lentos da CPU, embora não sejam notados se executados com pouca frequência.

Esse processo é exatamente igual a quando um processo encerra seu intervalo de tempo e é suspenso pelo sistema operacional e, em seguida, reiniciado com um novo intervalo de tempo.

informação relacionada