Entornos Virtuales de Python
Introducción
La presente wiki tiene el fin de mostrar en sencillos pasos como un usuario puede crear un entorno virtual de Python para su uso y gestión.
Debe considerar que el uso de entornos virtuales, conlleva la responsabilidad de la administración por el propio usuario de la instalación de librerías que deba requerir, como también considerar que el performance que pueda obtener será distinto en comparación a las librerías que instale el equipo de soporte del NLHPC.
Creando un entorno virtual
Carga de Módulo Python
El primer paso es cargar el módulo de Python que necesite utilizar.
Puede buscar las distintas versiones disponibles ejecutando:
ml spider Python
Y cargar el módulo indicando la versión, por ejemplo:
ml intel/2022.00 ml Python/3.12.3
Creación de entorno virtual
Ya con el módulo de Python para su uso, crearemos el entorno virtual con el comando:
python -m venv mi_entorno
Puede reemplazar el nombre mi_entorno por el nombre que desee. También debe saber la úbicación de su entorno para futuro uso.
Activación de entorno virtual
Para hacer uso de nuestro entorno virtual deberemos activarlo con el siguiente comando:
source mi_entorno/bin/activate
En el caso de necesitar cambiar de entorno o solo desactivarlo puede ejecutar:
deactivate
Uso de entorno virtual
Instalación de librerías
Con nuestro entorno virtual activo, el usuario podrá instalar librerías ejecutando, por ejemplo:
pip install numpy
o la librería que necesite.
Debe considerar que una instalación así no estará optimizada.
Ejecutando scripts con el entorno virtual
Al ejecutar un script de Python deberá tener el entorno virtual activo. De lo contrario puede estar utilizando otra versión de Python.
Para conocer qué versión de Python está utilizando:
python -V
Para conocer la ubicación exacta del ejecutable de Python, ejecutar:
which python
En este último caso, la ruta deberá contener el nombre de su entorno virtual.
El uso de Python, non requiere de otra preparación más que el entorno virtual esté activo
Uso de entornos virtuales con SLURM
Para utilizar su entorno virtual bajo slurm, puede utilizar un script como el siguiente:
#!/bin/bash #SBATCH -J virtest #SBATCH -p general #SBATCH -n 1 #SBATCH -c 1 #SBATCH --mem-per-cpu=4363 #SBATCH --mail-user=foo@example.com #SBATCH --mail-type=ALL #SBATCH -o virtest_%j.out #SBATCH -e virtest_%j.err ml intel/2022.00 ml Python/3.12.3 source mi_entorno/bin/activate python mi_script.py
Lo importante dentro del script es:
- Cargar el módulo de Python necesario
- Cargar módulos extras de ser requeridos
- Activar el entorno virtual
Palabras finales
El uso de entornos virtuales de Python como se plantea en este documento, permite su uso de manera más autónoma para el usuario, lo que permitirá realizar modifiaciones de manera más dinámica en su entorno.
Al ser un entorno personalizado, el soporte que se podrá otorgar será limitado en relación a los módulos de Python y librerías compiladas ya disponibles en el Cluster.