ray: IDLE - это незанятые процессы, которые находятся в пуле обработки. (Рэй делает это так, чтобы уменьшить время запуска процесса). Каждый из них занимает около 0,21 ГБ памяти, потому что даже незанятые процессы должны использовать некоторую память (например, он должен запускать интерпретатор python).
Вероятно, вы можете решить проблему двумя способами. 1. Установите аргумент num_cpus
для ray_init
на меньшее значение (например, 2 ~ 3), чтобы у вас было доступно только 2 ~ 3 процесса. 2. Следует учитывать системную память. Как вы можете видеть, Рэй использует память не только для задач, но и для своих системных компонентов, таких как процессы raylet или idel. Если ваша машина имеет 4 ГБ памяти и если 2 из ваших задач используют 2 ГБ памяти и запланированы на этой машине, это вызовет проблему OOM, поскольку существуют дополнительные процессы, которые потребляют дополнительную память.
Чтобы избежать проблем с памятью, вы можете либо увеличить свой кластер (использовать большую машину или несколько машин), либо уменьшить использование памяти вашей задачей.