Есть ли разные экраны на разных ядрах ЦП?

sudo используется для запуска программы от имени другого пользователя (например, root).

Политики безопасности могут поддерживать кэширование учетных данных, чтобы пользователь мог снова запустите sudo на некоторое время, не требуя аутентификации.

Если вы уже запустили программу под другим пользователем и она работает, я думаю, что нежелательно отбирать повышенные привилегии у запущенного процесса, потому что он работает долгое время.

Кэширование — это функция, которая позволяет запускать sudo несколько раз в течение 5 минут без запроса пароля, а также не запускать команду с повышенными привилегиями в течение 5 минут.

Невозможно даже сменить владельца процесса во время его работы. См. этот поток для справки.

0
27.08.2017, 01:15
1 ответ

Чтобы напрямую ответить на ваш вопрос, если вы не используете закрепление ЦП для ручного назначения определенного процесса определенному ЦП, ваша операционная система обычно планирует выполнение задач на том, что она считает «лучшим» ЦП для обработки в данный момент., и вполне возможно, что задача может даже перемещаться между несколькими ядрами ЦП, в зависимости от того, что еще машина делает в это же время.

Практический результат этого состоит в том, что если вы запускаете пять экземпляров вашей программы, они могут работать на пяти отдельных процессорах, но нет гарантии, что они будут работать на разных процессорах. ЦП. Если каждый отдельный процесс использует менее 20% мощности ЦП, то даже возможно (, хотя маловероятно ), что все пять могут работать на одном процессоре.

Чтобы решить вашу более широкую ситуацию, если у вас есть программа, которая обрабатывает несколько файлов и использует лишь небольшое количество ресурсов ЦП, есть большая вероятность, что вашим узким местом является емкость дискового ввода-вывода. Если это так, то для ускорения потребуется более быстрый диск (или больший объем дискового кэша, если вы многократно читаете одни и те же данные )и распараллеливаете их между несколькими процессами и ЦП , что может фактически уменьшить ] производительности, заставляя диск тратить время на переключение между чтением входного файла первого экземпляра (с )и чтением других файлов для каждого из других процессов.

Быстрый и простой способ проверить, не ограничивает ли вас дисковый ввод-вывод, — это cat file_1 file_2 file_3... >/dev/null(, где file_1и т. д. — список всех файлов, обрабатываемых вашей программой ), и сравнить, как долго требуется просто прочитать файлы (без какой-либо обработки )до времени, необходимого для их обработки.

2
28.01.2020, 02:33

Теги

Похожие вопросы