Consejos y buenas prácticas de uso

Ejecuciones en login

Las ejecuciones en login están PROHIBIDAS. Rogamos solicite un trabajo interactivo para realizar tareas como descomprimir archivos, copiar, editar, instalar o compilar. Login es una máquina con muy poco poder de procesamiento y dado que es la que realiza la gestión de los usuarios que se conectan con el cluster, no está preparada (y no es su función) soportar tareas que requieran gran cantidad de procesamiento o de memoria.

Copiado de archivos grandes

Cuando se necesita copiar un gran volumen de datos y con el fin de ser solidario y no consumir ancho de banda en login se debe utilizar el puerto 10022 de cluster.uy.

Ejemplo utilizando ssh

Se puede utilizar ssh para copiar directamente de la consola en bash:

scp -P 10022 [archivo origen] usuario@cluster.uy:[carpeta destino]

Ejemplo utilizando rsync

El comando rsync es el ideal cuando se necesitan sincronizar contenidos grandes en directorios:

rsync -arvz -e "ssh -p 10022" [archivo origen] usuario@cluster.uy:[carpeta destino]

Ejemplo utilizando FileZilla

Debe configurarse el protocolo SFTP, el Port:10022 y el Logon Type: Interactive.

FileZilla

Puede consultar la web de FileZilla para más información.

Solicitamos encarecidamente utilizar alguno de estos métodos para copiar un gran volumen de datos (varios GB).

Si tiene dudas puede contactarnos en la dirección corr..

Uso del espacio temporal de alta velocidad

El home de cada usuario se encuentra compartido a través de la red mediante NFS. Por esta razón toda escritura o lectura del contenido del home es considerablemente lenta. Sin embargo, todos los servidores de computo cuentan con discos de estado sólido para la lectura y escritura de información local al servidor. El tiempo de acceso a estos discos es sensiblemente menor que el tiempo de acceso al home. Para sacar provecho este espacio se encuentra disponible, en cada servidor, un directorio /scratch/<nombre_de_usuario> con 300 GB de capacidad.

Para utilizar el espacio disponible en /scratch de forma correcta es necesario reservar el espacio que se utilizará. Esto evita que el gestor coloque dos trabajos con fuerte uso de este recurso en la misma maquina. El espacio se puede reservar agregando la opción --tmp=xxxG donde xxx es la cantidad de GB a utilizar.

Se recomienda fuertemente hacer uso de /scratch/<nombre_de_usuario> para el almacenamiento de resultados parciales durante la ejecución de un trabajo. Luego, estos resultados pueden ser movidos al home una única vez al finalizar la ejecución. Al momento de usarlo es importante manejar idéntificadores únicos de archivos para evitar colisiones de nombres con otros usuarios (es posible crear directorios para simplificar este problema). Por último, solicitamos eliminar todos los archivos propios de /scratch/<nombre_de_usuario> luego de la finalización de un trabajo para mantener un uso razonable del espacio.

Optimización del uso de memoria

Para obtener información del uso de memoria de un trabajo ya terminado se sugiere utilizar el comando:

sacct -j <jobid> --format=User,Job,JobName,CPUTime,Elapsed,MaxRSS

Es recomendable que la cantidad máxima de memoria utilizada por un trabajo (MaxRSS) sea similar a la cantidad de memoria pedida para ese trabajo en el script SBATCH. Si la cantidad de memoria utilizada es mucho mayor que la pedida, entonces el trabajo terminará usando espacio de swap para ejecutar. Mientras que en la situación opuesta, si la cantidad de memoria utilizada es mucho menor que la pedida, el gestor SLURM podría postergar innecesariamente la ejecución de un trabajo por falta de recursos.