#python #cluster-computing
#python #кластерные вычисления
Вопрос:
Я пытаюсь запустить код в виртуальной среде python в кластере. Здесь я установил все соответствующие библиотеки, такие как h5py, plotly, tqdm, mpi4py и vtk, используя команду pip install ____, и все эти библиотеки установлены просто отлично. Но когда я запускаю свой код, система снова начинает запрашивать эти библиотеки. На данный момент, если я попытаюсь переустановить эти библиотеки, я получаю такие подсказки, как:
ПРЕДУПРЕЖДЕНИЕ: каталог ‘/gpfs/fs1/home//a5saieed/.cache/pip’ или его родительский каталог не принадлежат текущему пользователю или недоступны для записи. Кэш отключен. Проверьте разрешения и владельца этого каталога. При выполнении pip с помощью sudo может потребоваться флаг sudo -H. По умолчанию пользовательская установка, поскольку обычные пакеты сайта недоступны для записи
команда sudo не работает, поскольку это кластер, на котором я не имею права его использовать.
Что может быть причиной этой проблемы и каким может быть ее возможное решение?
…..
Ответ №1:
вы не должны использовать sudo с pip при активированном virtualenv. Попробуйте установить библиотеки таким образом:
# installs on virtualenv's python:
$ .env/bin/python -m pip install yourlibrary
Комментарии:
1. Я попробовал, но он все еще застрял. Теперь он не запрашивает библиотеки, но выдает следующую ошибку: srun: ошибка: запрос на дублирование PMK_KVS_Barrier из задачи 0 Странно, что этот код работал всего два дня назад в той же среде. Все, что я сделал по-другому, это протестировал его на одном узле, а затем отправил задание на slurm для mpirun. После этого все больше не работает. Даже тот же подход.
2. Это еще один другой вопрос. Можете ли вы опубликовать его независимо?
3. И отметьте мой ответ как решение для исходного вопроса?
4. Установлена
~/.env
ли./.env
конкретная виртуальная среда явно в этом месте? Если последнее, то относительно какого каталога? Я заглянул в сами каталоги venv и не вижу его там. Я никогда не знал о псевдолокации для виртуальной~/.env
среды, являющейся or./.env
. Я только что просмотрел этот каталог на нескольких серверах Linux, а также на моем Mac, и я не могу его найти, хотя мы используем виртуальные среды на всех наших серверах. Некоторые из них были CentOS, а некоторые — Ubuntu. Было бы полезно получить некоторое объяснение того, что с этим происходит.5. Привет @Steve, надеюсь, это решит ваши сомнения: advanced-python.readthedocs.io/en/latest/setup /…