Почему независимый процесс занимает больше времени? - PullRequest
0 голосов
/ 13 марта 2020

Я создал собственное приложение Job Manager.

Это запускает несколько копий моего рабочего приложения на выделенном сервере. Я запускаю около 3000 рабочих процессов (заданий) партиями по 50 на моем 30-ядерном компьютере. Каждая работа выполняет одинаковый объем работы. Считывает данные из кэша на диске SSD, записывает информацию на этапах на жестком диске и в базе данных Sql.

Сетевой трафик c низкий, использование диска низкое, активность SqlServer низкая, память остается постоянной на уровне около 60 % от моего 120G.

Каждый пакет заданий начинает занимать больше времени. Первоначально, первые несколько сотен рабочих мест хорошо используют ЦП, но затем загрузка ЦП начинает снижаться go (показать 0 много), и время работы начинает увеличиваться. Я не понимаю, почему это так, учитывая, что мой Диспетчер ресурсов не показывает ничего в максимальном объеме.

Что здесь может происходить?

Каждый рабочий процесс (задание) запускается совершенно независимо экземпляр моего exe. Так что я не думаю, что это может привести к утечке памяти.

Я не могу профилировать - так как профиль за один запуск экземпляра exe показывает, что он работает быстро!

...