Код: Выделить всё
/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
Я запускаю контейнер с помощью docker run --gpus all --runtime=nvidia --shm-size=10Gb uv run.py .
Код: Выделить всё
FROM nvidia/cuda:13.0.2-cudnn-devel-ubuntu24.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
sudo \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
### Fetch uv from image repository
COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx /bin/
WORKDIR /home/app/aplication
COPY . .
RUN uv venv --python 3.12
ENV VIRTUAL_ENV=/home/app/xrc_core/.venv
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
RUN uv pip install -r python312_packages.txt
К сожалению, я не могу предоставить исходный код, но он работает предварительно скомпилированный в контейнере.
ИСПРАВЛЕНИЕ: добавление флага --ulimit nofile=: помогло, я обнаружил это, запустив более старую версию под управлением Python 3.10 и сообщения об ошибках стали более четкими (упоминание слишком большого количества открытых файлов), это вместе с --shm-size= разблокирует Python для полного использования общей памяти и ресурсов во время многопроцессорной обработки.
Фрагмент кода не требуется, поскольку целостность исходного кода не подвергается сомнению, он требует многопоточности и ресурсов, поэтому необходима специальная разблокировка ресурсов.
Подробнее здесь: https://stackoverflow.com/questions/798 ... tainerized
Мобильная версия