Переключается ли процесс между различными ядрами?

будет ли процесс переключаться между различными ядрами для повышения производительности? Если процесс выполняет переход между ядрами, какие компоненты совместно используются ядрами? Кэш, регистры или память L1-L3?

18
задан Twisty Impersonator
14.01.2023 7:47 Количество просмотров материала 2588
Распечатать страницу

3 ответа

будет ли процесс переключаться между различными ядрами для повышения производительности?

Это зависит от того, является ли процесс многопоточным процессом или нет. Сам процесс в основном просто "контейнер" для потоков, он должен иметь по крайней мере один для запуска. Каждый поток может использовать ядро процессора, поэтому, если ваш процесс имеет 2 потока (GUI-и рабочий поток), он будет работать на 2 ядрах процессора.

вопрос " будет обрабатывать переключение между разными ядра " не совсем корректно, потому что такое переключение запланировано операционной системой (ОС), а не самим процессом!

1
отвечен duDE 2023-01-15 15:35

давайте представим себе один загруженный процессор с 2 ядрами системы, где нагрузка приближается к 100%.

процесс с PID 1234 имеет только один поток (например, консольное приложение, выполняющее сжатие звука monothread).

для этого типа процесса, система будет стараться изо всех сил, чтобы запустить поток на том же ядре, чтобы свести к минимуму ошибки кэша. Тем не менее, если система действительно занята, аналогичные другие процессы могут также попытаться работать на тех же ядрах. В этом случае, в принципе, ваш один процесс потока может выполняться сначала на ядре #1, затем на ядре #2 и так далее.

0
отвечен Strangelovian 2023-01-15 17:52

процесс переключения между процессорами повредит производительности, потому что переключатель будет означать хранение информации о процессе и регистров в памяти, затем загрузите его на другой процессор.

эти команды хранения и загрузки являются одними из самых медленных команд на ЦП, хотя они не будут замечены, если выполняются очень редко.

этот процесс точно так же, как когда процесс завершает свой отрезок времени и приостанавливается операционной системой, а затем перезапускается с новый временной срез.

0
отвечен harrymc 2023-01-15 20:09

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх