Как я могу распараллелить запуск Docker? - PullRequest
0 голосов
/ 05 мая 2018

Если я запускаю docker run ... для запуска контейнера, затем запускаю задание и выключаю контейнер на 16 контейнерах последовательно, он работает примерно с той же скоростью, как если бы я запускал 16 разных процессов, каждый из которых выполнял docker run. Это на 16-ядерном компьютере. Как я могу это исправить?

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

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

Кто-нибудь знает, почему это? Dockerd использует только одно ядро?

1 Ответ

0 голосов
/ 05 мая 2018

Я предполагаю, что вы используете Docker изначально в Linux. Трудно сказать без дополнительной информации. Я думаю, что ваши контейнеры используют более одного потока, и они конкурируют за ресурсы. Я бы проверял использование ресурсов, отслеживая «статистику докера», когда вы запускаете каждый контейнер, чтобы увидеть, что на самом деле происходит. Ваша производительность может быть ограничена другими факторами, такими как I / O

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...