VMD acelerado por GPU

Empieza hoy mismo con esta Guía para aplicaciones preparadas para GPU.

Lattice Microbes

VMD es un programa de visualización molecular diseñado para el modelado, visualización y análisis de sistemas biomoleculares como proteínas, ácidos nucleicos, membranas de lípidos y estructuras de carbohidratos. Proporciona una amplia variedad de representaciones gráficas para la visualización y el coloreado de estructuras moleculares: superficies moleculares, esferas y cilindros Corey-Pauling-Koltun (CPK) espaciales, enlaces de regaliz, tubos y cintas centrales, dibujos de estructuras secundarias y muchos más.

VMD se puede usar para animar y analizar la trayectoria de una simulación de dinámica molecular (MD). Concretamente, puede actuar como front-end gráfico de un programa MD externo al mostrar y animar la simulación activa de una molécula en un ordenador local o remoto.

Aunque el programa no se suele usar de forma interactiva en un entorno gráfico de escritorio, también se puede usar para realizar cálculos analíticos (modo lote) no interactivos, tareas de visualización en estaciones de trabajo (o nodos con un clúster), en clústeres de memoria distribuidos en paralelo y en superordenadores que utilicen una interfaz de paso de mensajes (MPI). Para obtener más información, visita el sitio web de VMD.

Instalación

Puedes descargar e instalar VMD en una reconstrucción completa, o bien puedes descargar y ejecutar el contenedor de VMD desde NVIDIA GPU Cloud.

Instalar aplicaciones en un entorno de computación de alto rendimiento (HPC) puede ser complicado. Los contenedores te permiten ejecutar la aplicación sin tener que instalarla en el sistema, de forma que resulta sencillo implementar la versión más reciente y, a la vez, se optimiza el rendimiento. Además, ejecutar un contenedor de VMD es muy fácil y se puede configurar en unos minutos. 

Ejecución de trabajos

Existen dos maneras de ejecutar el contenedor cuando lo extraigas de NGC.

  • Ejecutar VMD directamente desde el comando nvidia-docker run.
  • Ejecutar el contenedor de VMD de forma interactiva en el propio contenedor.

1. Ejecutar VMD desde la línea de comandos

Para ejecutar el contenedor de VMD desde la interfaz de la línea de comandos (CLI), escribe este comando para ejecutar VMD y permitir que el directorio de trabajo actual sea accesible como “/workspace” en el contenedor:

nvidia-docker run -it --rm -v $(pwd):/workspace nvcr.io/hpc/vmd:cuda9-ubuntu1604-egl-1.9.4a17 /opt/vmd/bin/vmd -dispdev openglpbuffer

Ten en cuenta que también podrías enviar el comando de la CLI para iniciar VMD en un script ubicado en tu directorio de trabajo. El siguiente script inicia el contenedor de VMD y ejecuta el script xxx.vmd desde el directorio workspace:

nvidia-docker run -it --rm -v $(pwd):/workspace nvcr.io/hpc/vmd:cuda9-ubuntu1604-egl-1.9.4a17 /opt/vmd/bin/vmd -dispdev openglpbuffer -e /workspace/xxx.vmd

2. Ejecutar VMD de forma interactiva

En este ejemplo, vamos a ejecutar VMD de forma interactiva y a reproducir un escenario de prueba H1N1 incluido en el contenedor. La ejecución de forma interactiva resulta útil al usar VMD para tareas de visualización y análisis que puedan requerir de scripting externo de ejecuciones de VMD, una gestión de archivos significativa dentro de jerarquías de directorios complejas o al ejecutar varias instancias de VMD en el mismo contenedor y de la misma imagen del sistema operativo (SO).

Para ejecutar el contenedor de VMD de forma interactiva, escribe este comando para iniciar el contenedor y montar el directorio actual en /workspace, de forma que estará disponible dentro del propio contenedor (consulta las opciones -v en el siguiente comando para configurar la asignación del directorio de datos local al que está dentro del contenedor).

nvidia-docker run -it --rm -v $(pwd):/workspace nvcr.io/hpc/vmd:cuda9-ubuntu1604-egl-1.9.4a17 /bin/bash

Después de que se inicie el contenedor te encontrarás en /directory, donde podrás cambiar a /opt/vmd/h1n1testscene para volver a renderizar el escenario de prueba H1N1 e iniciar VMD. Ejecuta el escenario de prueba H1N1 incluido dentro del contenedor. El escenario de prueba H1N1 hace una prueba del cálculo de superficie molecular acelerado por NVIDIA® CUDA® “QuickSurf”, de las etiquetas definidas por el usuario y geometría gráfica, y renderizado OpenGL fuera de pantalla basada en Epison Generation Language (EGL):

cd /opt/vmd/h1n1testscene

/opt/vmd/bin/vmd -dispdev openglpbuffer -e h1n1-egloptix-test.vmd

Después de que se cargue y represente la escena H1N1, VMD moverá la imagen a un archivo con el nombre “vmdscene-egl.tga”. Este se puede copiar en /workspace para poder copiar así la imagen resultante al almacenamiento externo del contenedor y conseguir verla.

Configuración de prueba

El contenedor contiene scripts para ejecutar y probar VMD. Ejecuta el escenario de prueba “HIV-1 capsid” incluido dentro del contenedor. Este demuestra el cálculo de superficie molecular acelerado por CUDA “QuickSurf”, el renderizado OpenGL fuera de pantalla basada en EGL y el trazado de rayos de alta fidelidad acelerado por GPU OptiX:

cd /opt/vmd/hivtestscene
/opt/vmd/bin/vmd -dispdev openglpbuffer -e hiv-simple-egloptix-test.vmd

Configuraciones recomendadas del sistema

El contenedor de VMD está optimizado y su fiabilidad se ha puesto a prueba para ejecutarse en sistemas equipados con NVIDIA® Pascal™ y NVIDIA Volta con CUDA® 9 o superior. VMD y todos los contenedores de aplicaciones HPC disponibles en NVIDIA GPU Cloud se pueden ejecutar en los sistemas siguientes:

  • Estación de trabajo: equipada con NVIDIA Titan V y CPU x86
  • Sistemas NVIDIA® DGX™
  • Clúster HPC con GPU Pascal/Volta, CUDA 9, CPU x86
  • Nube (AWS, Google Cloud Platform y muchos más)

Accede a los contenedores de aplicaciones aceleradas por GPU con NVIDIA GPU Cloud.