Как запретить ОС ограничивать использование процессора/оперативной памяти?

Как запретить ОС ограничивать использование процессора/оперативной памяти?

У меня есть программа на Python, которая использует multiprocessing.Pool, что означает, что она порождает несколько процессов. Программа получает 70k текстовых файлов, выполняет некоторую обработку и сохраняет их в другой каталог. Я хочу использовать все ядра моего процессора при ее запуске, напримерэтот.

И какое-то время мне это удавалось. Моя программа каждый раз выполнялась примерно 10 секунд, что хорошо.

real    0m12.430s
user    0m13.072s
sys     0m9.704s

Но в последние несколько дней это было непоследовательно. Иногда он использует 100% CPU для всех ядер. В других случаях, без причины, программа использует только 0-1 процент, и ее выполнение занимает до 5 минут.

real    5m6.186s
user    0m4.844s
sys     0m4.968s

Обратите внимание, что real >> user + sys, хотя я понятия не имею, что это значит. Также обратите внимание, что я не меняю никаких параметров кода или других настроек между запусками. В этом случае я также заметил, что использование ОЗУ каждым процессом никогда не превышает 10 МБ, что может повлиять на использование ЦП.

Мой вопрос в том, как я могу вообщеначинатьдиагностировать эту проблему? Некоторые из моих гипотез:

  1. ОС обнаружила, что моему ноутбуку 2 года, и пытается продлить его срок службы, ограничивая использование ЦП/ОЗУ
  2. Возможно, ОС ограничивает использование процессора/оперативной памяти процессом, если он потребляет много ресурсов в течение длительного времени.
  3. Кто-то получил удаленный доступ к моему ноутбуку и троллит меня

Я использую Linux Mint 17.3 на ноутбуке с процессором Intel(R) Core(TM) i3-4005U с тактовой частотой 1,70 ГГц, 4 ядра, 8 ГБ оперативной памяти, жесткий диск

Заранее спасибо.

EDIT: Вот вывод vmstat во время работы программы

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 3  1      0 2773588 242912 2522744    0    0   114    54  229  812 11  2 83  5  0

Связанный контент