El modo cliente-servidor de COMSOL
- Detalles
- Categoría: Comsol
- Visto: 6038
Cuando se arranca COMSOL Multiphysics mediante, por ejemplo, doble clic en el icono del escritorio de Windows, COMSOL Multiphysics se corre como una única aplicación que incluye tanto COMSOL Multiphysics Client como COMSOL Multiphysics Server. Sin embargo, la arquitectura cliente-servidor de COMSOL permite accede al Servidor de COMSOL Multiphysics — el motor computacional de COMSOL — como un proceso separado. Por ejemplo, COMSOL Desktop puede actuar como un Cliente de COMSOL Multiphysics cuando se conecta a un Servidor de COMSOL Multiphysics.
Se necesita una licencia en red flotante para correr COMSOL Multiphysics Server y COMSOL Multiphysics Client en ordenadores separados. Sin embargo, cualquier licencia de COMSOL es suficiente para correr el cliente y el servidor en el mismo ordenador.
El cliente y el servidor no tienen que correr en la misma plataforma. Por ejemplo, se puede correr COMSOL Desktop en Windows conectando a un Servidor de COMSOL Multiphysics en un ordenador Linux o macOS. Esto permite descargar los cálculos de mayor envergadura del portátil personal u ordenador de escritorio, y utilizarlos solo para correr la interfaz gráfica de usuario de COMSOL Desktop. Un uso típico sería correr COMSOL Multiphysics Server en un ordenador con grandes cantidades de memoria (RAM) y potencia de procesado y utilizar el ordenador personal para el pre- y postprocesado con COMSOL Desktop.
Se trata por tanto de una de las opciones quizás más desconocidas de la licencia flotante de COMSOL Multiphysics (FNL), pero que puede suponer un gran ahorro para las empresas que realicen modelos de grandes dimensiones es el modo Cliente-Servidor. Este modo de uso del programa permite el acceso remoto a un ordenador con mayores recursos que permita resolver modelos de grandes dimensiones mientras se mantiene el uso de la máquina local para visualizar los gráficos, lo que puede tener grandes ventajas en ciertos casos.
Cuanto más se complican los problemas científicos o de ingeniería mayor suele ser el requisito de uso de grandes cantidades de datos. Normalmente las simulaciones de COMSOL Multiphysics requieren del orden de megabytes hasta gigabytes de datos. Para generar y almacenar estos datos se requerirá el uso de ordenadores con procesadores rápidos, mucha memoria RAM y un gran disco duro. Para visualizar estas cantidades de datos es importante disponer de una tarjeta gráfica de gama alta.
Está claro que lo ideal sería que todo ingeniero dispusiera de un ordenador de alta gama con la mayor cantidad de memoria disponible, que esta fuera mayor que la memoria requerida por el modelo y con una potencia de procesado que permita cumplir todos los pasos del modelado sin problemas. Pero la realidad suele ser otra. Normalmente tenemos que hacerlo con los recursos de que disponemos en el escritorio del usuario. Por tanto, si necesitamos resolver modelos más grandes, seguramente querremos acceder a unos recursos de computación compartidos a través de la red.
Aquí es donde radica el problema: Pasar los datos arriba y abajo a través de una red es mucho más lento que pasar datos dentro del mismo ordenador, especialmente cuando se trata del paso de gráficos intensivos del postprocesado. Este se hace particularmente evidente cuando se utiliza una aplicación de escritorio virtual, que tiene que enviar continuamente muchos megabytes de datos gráficos a través de la red. Así que veamos cómo el modo Cliente-Servidor de COMSOL Multiphysics controla este problema.
Las diferentes etapas del flujo de trabajo de COMSOL Multiphysics suelen tener unas exigencias de interactividad y requisitos de computación diferentes. La etapa de preprocesado, en la que se realiza la creación de la geometría y la definición de la física, el usuario interactúa constantemente con la interfaz de usuario (UI) pero este paso normalmente no es computacionalmente muy intensivo. El mallado puede requerir mucha interacción con la UI pero también puede ser computacionalmente exigente. La resolución del problema mediante los resolvedores es el paso con más exigencia computacional. Sin embargo el usuario raramente interactúa con la UI. Por último el postprecesado suele ser el paso más interactivo en el que la mayor parte de los cálculos son gestionados por la tarjeta gráfica.
Los usuarios normalmente arrancan COMSOL Multiphysics en sus ordenadores de escritorio o portátiles y empiezan dibujando la geometría, definiendo las propiedades de los materiales, aplicando las cargas y configurando las condiciones de contorno. Como estos pasos involucran selección de objetos en la pantalla y escribir, los requisitos computacionales son bastante bajos.
Sin embargo, una vez que los usuarios empiezan con el mallado y la resolución de modelos grandes, rápidamente se pueden exceder sus recursos computacionales locales. Tanto el mallado como la resolución requieren tiempo y RAM. Si un modelo requiere más RAM que lo que está disponible localmente, el ordenador se hará bastante insensible durante algún tiempo. En lugar de actualizar cada ordenador, se puede recurrir al modo Cliente-Servidor de forma que los usuarios puedan accede a un recurso de computación remoto.
En cualquier momento cuando se está utilizando COMSOL Multiphysics es possible conectar con un ordenador remoto a través del modo de operación Cliente-Servidor. Se trata de un proceso de dos pasos. Primero se inicia sesión en el sistema remoto y se invoca al Servidor de COMSOL Multiphysics, lo que iniciará el proceso de COMSOL Multiphysics Server y abrirá la conexión en red. Segundo, en la máquina local, simplemente se entra la información de conexión de red en una sesión abierta de COMSOL Multiphysics. Entonces el software de forma transparente transfiere los datos del modelo y los resultados adelante y atrás en la red y utilice los recursos del ordenador remoto para todos los cálculos.
Es posible desconectarse de COMSOL Multiphysics Server siempre que no se esté en medio de un cálculo. Esto liberará los recursos de cálculo compartidos para los demás. Puede ser una buena práctica hacerlo durante el postprocesado, ya que en primer lugar involucra visualización de datos y es menos computacionalmente intensivo. Visualizar los resultados siempre se gestiona localmente, así que es importante disponer de una buena tarjeta gráfica.
Se puede ver que correr las simulaciones en modo Cliente-Servidor permitirá que cada parte de la infraestructura IT funcione de la mejor manera. Puede correrse el Servidor COMSOL Multiphysics en los recursos de computación de alto rendimiento mientras los usuarios siguen trabajando en sus máquinas locales para la visualización de gráficos. Además del número de licencias disponibles, no existe otro límite al número de usuarios simultáneamente corriendo un servidor en cada ocasión. De hecho, se puede correr COMSOL Multiphysics en modo Cliente-Servidor todo el tiempo. Todo, el preprocesado, mallado, resolución y cualquier cálculo de postprocesado no gráfico pueden realizarse en el servidor. Mediante el aprovechamiento de los recursos de cálculo compartidos de la organización los usuarios no tendrán que actualizar su ordenador de escritorio cada vez que quieran correr un modelo más grande de COMSOL Multiphysics.