Распределенные работники Dask всегда пропускают память при выполнении многих задач - PullRequest
1 голос
/ 07 октября 2019

Какие стратегии можно обойти или отладить?

distrib.worker - ПРЕДУПРЕЖДЕНИЕ - Использование памяти велико, но у работника нет данных для сохранения на диск. Возможно, какой-то другой процесс вызывает утечку памяти? Оперативная память: 26,17 ГБ - Ограничение рабочей памяти: 32,66 ГБ

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

Я пытаюсь использовать fire_and_forget. Поможет ли .release () фьючерсам? Обычно я запускаю эти задачи через client.submit из REPL, а затем прекращаю REPL.

Буду рад отскочить работникам и добавить несколько шаблонов повторов, если это правильный способ использования dask с утечками из библиотек.

ОБНОВЛЕНИЕ:

Я попытался ограничить рабочую память до 2 ГБ, но все еще получаю эту ошибку. Когда происходит ошибка, кажется, что она входит в какой-то неисправимый цикл, непрерывно печатая ошибку, и никаких вычислений не происходит.

1 Ответ

1 голос
/ 09 октября 2019

В этом случае Dask не пропускает память. Что-то еще есть. Даск просто говорит тебе об этом. Что-то в коде, который вы запускаете с Dask, похоже, что-то пропускает.

...