Python не может запускать многопроцессорную обработку в контейнереPython

Программы на Python
Ответить
Anonymous
 Python не может запускать многопроцессорную обработку в контейнере

Сообщение Anonymous »

В настоящее время при переносе программы Python из локальной среды в контейнерную среду, пока она запускается и выполняет свою задачу локально, происходит сбой в Docker на ранних этапах запуска.

Код: Выделить всё

/home/app/.../.venv/lib/python3.12/site-packages/nvidia_smi.py:810: SyntaxWarning: invalid escape sequence '\A'
mem = 'N\A'
/home/app/.../.venv/lib/python3.12/site-packages/nvidia_smi.py:831: SyntaxWarning: invalid escape sequence '\A'
maxMemoryUsage = 'N\A'
/home/app/.../run.py:2: MovedIn20Warning: The ``declarative_base()`` function is now available as sqlalchemy.orm.declarative_base(). (deprecated since: 2.0) (Background on SQLAlchemy 2.0 at: https://sqlalche.me/e/b8d9)
from ... import main
25.10.2-8-g51a92b3-dirty
[2025/11/26 12:38:36.285] | [  INFO] | Running scenario: ... | ID=796395118d801c8b2bd1c91730121205 SimulationTime=240.00[s]
[2025/11/26 12:38:37.312] | [  INFO] | child process calling self.run()


Exception ignored in: 
Traceback (most recent call last):
File "... .py", line 19392, in ... .CTrackingLoopFB.__del__
AttributeError: 'CTrackingLoopFB' object has no attribute 'mFile'
Exception ignored in: 
Traceback (most recent call last):
File "/root/.local/share/uv/python/cpython-3.12.12-linux-x86_64-gnu/lib/python3.12/multiprocessing/shared_memory.py", line 187, in __del__
self.close()
File "/root/.local/share/uv/python/cpython-3.12.12-linux-x86_64-gnu/lib/python3.12/multiprocessing/shared_memory.py", line 230, in close
self._mmap.close()
BufferError: cannot close exported pointers exist
Exception ignored in: 
Traceback (most recent call last):
File "/root/.local/share/uv/python/cpython-3.12.12-linux-x86_64-gnu/lib/python3.12/multiprocessing/shared_memory.py", line 187, in __del__
self.close()
File "/root/.local/share/uv/python/cpython-3.12.12-linux-x86_64-gnu/lib/python3.12/multiprocessing/shared_memory.py", line 230, in close
self._mmap.close()
BufferError: cannot close exported pointers exist
Я проверил /dev/shm на локальном компьютере, и ожидаемое использование составляет ~ 4 ГБ, в то время как в контейнерах он постоянно использует только 60 МБ, прежде чем произойдет сбой/остановка, при этом остается больше свободного места.
Я запускаю контейнер с помощью docker run --gpus all --runtime=nvidia --shm-size=10Gb uv run.py .
К сожалению, я не могу предоставить исходный код, но он работает в контейнере предварительно скомпилированным.

Подробнее здесь: https://stackoverflow.com/questions/798 ... tainerized
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»