====== Nodos de visualización ====== Existe una demanda de los usuarios para poder utilizar bibliotecas de visualización para poder realizar gráficos de los datos que generan a partir de las simulaciones que realizan en el cluster. Existen dos posibilidades: * Utilizan el nodo de login (snmgt01/02) para hacer gráficos sencillos (gnuplot/matplotlib) y redirigen el display via SSH (ssh -X / ssh -Y) para poder ver el output en su equipo local. * Utilizan un nodo de visualización (vlmgt01/02) para demandas gráficas más intensivas (ovito/vesta/xcrysden) y utilizan un protocolo de comunicación enfocado a este tipo de tareas. ===== Exploración ===== Este documento es un dump donde voy a documentar distintas opciones que testee, ya que a priori no está claro cual es la mejor estrategia o herramienta para ello. Ya estuve haciendo algunas pruebas antes de comenzar a documentar, por lo que puede que haya algo que se me olvide de agregar. Estuve usando los nodos que finalizan en 02 para los tests (snmgt02 / vlmgt02). Me gustaría estudiar la posibilidad de hacer una reinstalación de los nodos de visualización para poder revertir los cambios hechos y poder documentarlos mejor. De esta manera, asegurarme que se puede reproducir la instalación en los nodos de visualización y login. ==== X11 ==== En caso de querer tunelear el display por SSH de forma más sencilla, son necesarias algunas tools de X11 en el nodo. Estas se pueden instalar con dnf. dnf install xorg-x11-xauth xorg-x11-apps mesa-dri-drivers Para redigirig el display a la computadora local, hace falta hacer ssh con alguna de las siguientes opciones: * -XC (untrusted y compressed) * -YC (trusted y compressed) ssh -YC -J bbruzzo@172.29.3.3 bbruzzo@172.28.253.12 Se puede testear si está funcionando correctamente con alguna de estas tools (entre otras): * xeyes * xclock * glxgears ==== Benchmark de Bandwith con iperf3 ==== Usé iperf3 para medir el bandwith via ssh. En el nodo destino, en este ejemplo, snmgt02: iperf3 -s -p 5201 Abrir un túnel desde la sesión local: ssh -L 6002:localhost:5201 -J bbruzzo@172.29.3.3 bbruzzo@172.28.253.12 -N -f Lanzar iperf3 desde la sesión local: iperf3 -c localhost -p 6002 Observamos en la sesión local: $ iperf3 -c localhost -p 6002 Connecting to host localhost, port 6002 [ 5] local ::1 port 39988 connected to ::1 port 6002 [ ID] Interval Transfer Bitrate Retr Cwnd [ 5] 0.00-1.00 sec 12.1 MBytes 102 Mbits/sec 11 465 KBytes [ 5] 1.00-2.00 sec 8.00 MBytes 67.1 Mbits/sec 14 465 KBytes [ 5] 2.00-3.00 sec 7.50 MBytes 62.9 Mbits/sec 10 465 KBytes [ 5] 3.00-4.00 sec 7.62 MBytes 64.0 Mbits/sec 6 465 KBytes [ 5] 4.00-5.00 sec 8.62 MBytes 72.3 Mbits/sec 12 625 KBytes [ 5] 5.00-6.00 sec 7.50 MBytes 62.9 Mbits/sec 7 625 KBytes [ 5] 6.00-7.00 sec 8.50 MBytes 71.3 Mbits/sec 3 625 KBytes [ 5] 7.00-8.00 sec 8.75 MBytes 73.4 Mbits/sec 1 625 KBytes [ 5] 8.00-9.00 sec 6.88 MBytes 57.7 Mbits/sec 6 625 KBytes [ 5] 9.00-10.00 sec 9.25 MBytes 77.6 Mbits/sec 4 625 KBytes - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 84.8 MBytes 71.1 Mbits/sec 74 sender [ 5] 0.00-10.27 sec 82.4 MBytes 67.3 Mbits/sec receiver iperf Done. Y en la sesión remota que teníamos abierta ahora se observa: [bbruzzo@snmgt02 ~]$ iperf3 -s -p 5201 ----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- Accepted connection from ::1, port 33486 [ 5] local ::1 port 5201 connected to ::1 port 33494 [ ID] Interval Transfer Bitrate [ 5] 0.00-1.00 sec 7.58 MBytes 63.6 Mbits/sec [ 5] 1.00-2.00 sec 8.12 MBytes 68.2 Mbits/sec [ 5] 2.00-3.00 sec 8.03 MBytes 67.4 Mbits/sec [ 5] 3.00-4.00 sec 8.10 MBytes 68.0 Mbits/sec [ 5] 4.00-5.00 sec 8.13 MBytes 68.2 Mbits/sec [ 5] 5.00-6.00 sec 8.09 MBytes 67.9 Mbits/sec [ 5] 6.00-7.00 sec 8.09 MBytes 67.9 Mbits/sec [ 5] 7.00-8.00 sec 8.03 MBytes 67.3 Mbits/sec [ 5] 8.00-9.00 sec 8.04 MBytes 67.5 Mbits/sec [ 5] 9.00-10.00 sec 7.97 MBytes 66.9 Mbits/sec [ 5] 10.00-10.27 sec 2.20 MBytes 69.2 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 5] 0.00-10.27 sec 82.4 MBytes 67.3 Mbits/sec receiver ----------------------------------------------------------- Server listening on 5201 ----------------------------------------------------------- TO DO: Explorar formas más fehacientes para testear el bandwith. [[https://iperf.fr/iperf-doc.php#repmode|Ejemplo en la documentación de iperf3]]. ==== (TO DO) TurboVNC y VirtualGL ==== [[https://turbovnc.org/|TurboVNC]] [[https://virtualgl.org/|VirtualGL]] Explicar como usar estas herramientas en los nodos de visualización Acelaración por hardware con las GPUs nvidia, etc. ==== (TO DO) Slurm ==== Explicar como se podría limitar el uso de los nodos de visualización a través de slurm, usando PAM, y como podrían hacer los usuarios para hacer ssh a los mismos. Estaría bueno que puedan directamente hacer ssh viz1.clementinaxxi.org.ar