Загрузка карты памяти Python - ошибка: невозможно выделить память

Я использую сервер Ubuntu для запуска процесса, интенсивного использования памяти. Моя структура данных - это словарь numpy массивы. После joblib.dumpВ качестве карты памяти размер файла составляет 52 ГБ. Когда я снова открываю файл, используя joblib.load, Я получаю ошибку - "Слишком много открытых файлов". Я хочу передать эту карту памяти joblib.Parallel для дальнейшего расчета.

Я увеличиваю лимит количества файлов на ulimit -n 1000000, который был 1024 раньше. Теперь, когда я пытаюсь загрузить тот же файл, он выдает мне ошибку - OSError: [Errno 12] Cannot allocate memory, Я не вижу увеличения памяти при запуске процесса (используя htop). Я запутался, поскольку процесс, похоже, не использует память, но выдает ошибку выделения памяти.

Это мой файл proc/limit:

Limit Soft Limit Жесткие лимиты     
Максимальное время процессора неограниченное количество секунд   
Максимальный размер файла неограничен, неограничен байт     
Максимальный размер данных неограничен, неограничен байт     
Максимальный размер стека 8388608 неограниченных байтов     
Максимальный размер основного файла 0 неограниченных байтов     
Максимальный резидент установил неограниченные неограниченные байты     
Макс процессов 1031673              1031673 процессов 
Максимум открытых файлов 1000000 1000000 файлов     
Максимальное количество заблокированной памяти неограниченное количество байтов     
Максимальное адресное пространство, неограниченное количество байтов     
Макс файл блокирует неограниченное количество неограниченных блокировок     
Макс ожидающих сигналов 1031673              1031673 сигналов   
Максимальный размер сообщения 819200               819200 байт     
Макс хороший приоритет 0 0                    
Максимальный приоритет в реальном времени 0 0                    
Максимальный тайм-аут в реальном времени неограниченно нас        

Кажется, что нет никаких ограничений памяти на сам процесс. Что здесь может происходить?

0 ответов

Другие вопросы по тегам