SISTEMA Y MÉTODO DE GESTIÓN REMOTA DE UNA PLATAFORMA DE SUPERCOMPUTACIÓN MEDIANTE INTERFAZ WEB.

Sistema y método de gestión remota de una plataforma de supercomputación mediante interfaz web,

a través de interfaz de usuario (100) mediante navegador web (502) de una estación cliente (504). El método comprende:

- generación dinámica de formulario de inicialización de cómputos (112) para la introducción de parámetros, condiciones iniciales y de contorno del problema, comprendiendo:

- obtener el modelo concreto (200) de problema a resolver;

- cargar una estructura XML de metadatos de código (202) asociada a dicho modelo;

- utilizar una plantilla de estilo avanzada XSL (204) para transformar (206) la estructura XML;

- obtener los parámetros, condiciones iniciales y de contorno del problema para la posterior ejecución en el clúster (508);

- selección de parámetros de ejecución (120) de procesos a ejecutar en el clúster (508);

- inclusión de datos y compilación (122) del código resultante en función de los parámetros de ejecución seleccionados por el usuario;

- ejecución (126) del código resultante en nodos de cómputo del clúster (514).

Tipo: Patente de Invención. Resumen de patente/invención. Número de Solicitud: P201230897.

Solicitante: UNIVERSIDAD DE MALAGA.

Nacionalidad solicitante: España.

Inventor/es: GONZALEZ VIDA,José Manuel, MORALES DE LUNA,Tomás, CASTRO DIAZ,Manuel Jesús.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • G06F9/50 FISICA.G06 CALCULO; CONTEO.G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › G06F 9/00 Disposiciones para el control por programa, p. ej. unidades de control (control por programa para dispositivos periféricos G06F 13/10). › Asignación de recursos, p. ej. de la unidad central de procesamiento [CPU].
SISTEMA Y MÉTODO DE GESTIÓN REMOTA DE UNA PLATAFORMA DE SUPERCOMPUTACIÓN MEDIANTE INTERFAZ WEB.

Fragmento de la descripción:

Sistema y método de gestión remota de una plataforma de supercomputación mediante interfaz web.

Campo de la invención La presente invención se engloba dentro del campo de las plataformas de supercomputación empleadas especialmente para la simulación numérica de problemas descritos mediante modelos matemáticos relacionados con la física, estadística, ingeniería, biología, economía, etc. que requieren una gran capacidad de cómputo y que se emplean en entornos multidisciplinares como por ejemplo la simulación de flujos geofísicos. En este ámbito se ha aplicado para la modelización de inundaciones en medio rural, simulaciones de flujos marinos de una o dos capas superpuestas de fluidos, simulación de avalanchas subaéreas y submarinas, simulación de tsunamis, simulación del transporte de sedimentos y corrientes túrbidas, etc.

Antecedentes de la invención La resolución de problemas de simulación numérica se realiza habitualmente usando un ordenador (o un clúster de ordenadores -un clúster es un grupo de múltiples ordenadores unidos mediante una red de alta velocidad-) en los que se utiliza un determinado software preinstalado y adaptado al ordenador (o clúster de ordenadores) en sí. Así, por ejemplo, para la simulación de flujos geofísicos existen actualmente paquetes de software específicos. Este software suele estar limitado a un determinado sistema operativo y a ciertas especificaciones de hardware. Entre los programas que resuelven problemas de flujos geofísicos se pueden citar Mike 21 (DHI software) , Fluent (Ansys) , Comsol Multiphysics (Comsol) y Telemac 2D (EDF) . Éstos necesitan de la instalación de programas específicos o de la exportación de terminales gráficas para la interacción entre el usuario y el software.

Cuando se trata de resolver problemas reales de gran tamaño, la potencia de un ordenador personal suele ser insuficiente, haciéndose necesario el uso de un clúster de supercomputación. No todo el software existente está adaptado a este tipo de arquitecturas de supercomputación y los que lo están requieren de unas especificaciones de hardware precisas, de unos procesos de instalación específicos y pueden requerir de personal cualificado simplemente para su instalación.

Además, la mayor parte de este tipo de aplicaciones permiten a lo sumo ejecutar códigos ya existentes y pre-compilados, pero no suelen permitir la inclusión de código fuente por parte del usuario ni posibilidad de compilación para su ejecución en un clúster de supercomputación. En los que permiten la inclusión de código fuente por el usuario, están orientados para la resolución de problemas específicos y la interacción con la aplicación suele hacerse mediante terminales de tipo consola, exportando terminales gráficas o mediante la instalación de software específico en el equipo de usuario final.

Uno de los programas más completos en el ámbito de la simulación de flujos geofísicos es Fluent, que permite la definición de funciones específicas por parte del usuario (UDF) que son compiladas antes del proceso de ejecución. Sin embargo, este software requiere de la instalación no sólo en el clúster de supercomputación, sino también de programas específicos en el ordenador del usuario tanto para la interacción con el núcleo de cómputo de Fluent como para el manejo de las herramientas de pre y postproceso.

El clúster suele estar en una situación que no es accesible al usuario (salas especiales para laboratorios donde se encuentra físicamente el equipo informático y de acceso restringido) . Interactuar con este tipo de software suele requerir herramientas de acceso remoto y de exportación de terminales gráficos, que hacen necesaria la intervención de personal cualificado que posibilite al usuario final el uso de dicho paquete informático. Se conocen aplicaciones que permiten la gestión remota de un clúster mediante una interfaz gráfica. Estas aplicaciones requieren su instalación en un equipo cliente. También son conocidas aplicaciones que permiten la monitorización de un clúster mediante un simple navegador web. Mediante estas aplicaciones el usuario puede comprobar la carga del clúster e incluso visualizar ciertos resultados.

Entre la literatura científica, el documento “A web-based platform for computer simulation of seismic ground response” (Zhaohui et al, Journal Advances in Engineering Software. Volumen 35, Issue 5, Mayo 2004 Elsevier Science Ltd. Oxford, UK) presenta una plataforma web para la simulación de efectos sísmicos. El interfaz de entrada se implementa mediante navegador web. Los datos de entrada pueden ser introducidos en un formulario estático, el cual está preparado exclusivamente para el problema a ser resuelto, y mediante la introducción de un fichero. Durante la ejecución de la simulación se informa al usuario del estado de la misma por ejemplo mediante una página web. Como interfaz de salida describe una página web dinámica donde se permite visualizar los resultados y manipularlos. Sin embargo, la plataforma web que divulga está diseñada exclusivamente para la resolución de un problema concreto, no es aplicable a distintos tipos de problemas, de forma que para cualquier otra realización se tendría que rediseñar todo de nuevo desde el inicio. Otro documento científico relacionado es el titulado “Simulation anywhere any time: web-based simulation implementation for evaluating order-to deliver y system and progress” (Kumara et al; Proceedings of the Winter Simulation Conference, 2002 volumen 2. 11/12/2002. ISBN: 0-7803-7614-5) . Este documento describe un marco de simulación cliente/servidor de tres niveles basado en internet. Los elementos principales son un servidor de base de datos, un servidor de ejecución y una interfaz de usuario basada en la web. La interfaz de usuario gráfica basada en la web ayuda a los usuarios a realizar fácilmente el estudio de simulación desde cualquier lugar y en cualquier momento, y también facilita la visualización de los resultados.

El documento US20080178179-A1 describe un sistema y un método para un conjunto de componentes de middleware para soportar la ejecución de aplicaciones de análisis de riesgos financieros en una plataforma de supercomputación. El usuario envía los trabajos desde una aplicación o un navegador web y el cliente utiliza un fichero basado en XML para enviar los trabajos.

El documento US2008082933-A1 divulga una interfaz gráfica de usuarios que permite acceder a la cuenta de usuario y mostrar el estado de los trabajos. Un panel de entrada permite especificar el fichero de datos de entrada. La interfaz gráfica puede estar implementada mediante un servidor web interactivo accesible mediante tecnología de navegador web estándar. Una vez que el usuario accede a su cuenta puede seleccionar el centro de potencia virtual (VPC o clúster de supercomputadoras) . La interfaz gráfica muestra la lista de las aplicaciones disponibles en el VPC, su estado actual y estadísticas de uso. La interfaz gráfica de usuario permite al usuario elegir el número de procesadores para la ejecución del trabajo.

También existen diferentes documentos en los que el usuario accede al clúster de supercomputación para la gestión, envío de trabajos u obtención de resultados mediante navegadores webs estándar, como por ejemplo los documentos WO2005106664, US2003028645 y el artículo “Web Access to Supercomputing” (Alosio et al.; Computing in Science & Engineering. Diciembre 2001. Volumen 3, Issue 6. Páginas 66-72. ISSN 1521-9615) .

Aunque algunas de las invenciones anteriores emplean una interfaz web como elemento de interacción entre usuario y clúster de supercomputación, sin embargo, ninguna permite la generación dinámica de formularios de preproceso para cada modelo matemático con la posibilidad de inclusión de código fuente por parte del usuario. Los códigos que describen los documentos antes mencionados están ya compilados y se ejecutan en función de los parámetros introducidos en los formularios de entrada, por lo que no se permite que el usuario pueda introducir su propio código fuente para, posteriormente, ser compilado junto con los códigos ya existentes. Asímismo, en las invenciones mencionadas anteriormente los cálculos se han de ejecutuar en CPUs convencionales y no están preparados para ser ejecutados en GPUs (procesadores de tarjetas gráficas) .

Descripción de la invención La presente invención soluciona los problemas anteriormente mencionados, mediante la creación de una plataforma clúster e interfaz web que proporciona al usuario capacidad de la resolución numérica de problemas descritos mediante modelos matemáticos. La interfaz web libera al usuario de la dependencia de instalar software...

 


Reivindicaciones:

1. Método de gestión remota de una plataforma de supercomputación mediante interfaz web, siendo dicha gestión remota del clúster de computadoras (508) realizada a través de una interfaz de usuario (100) implementada mediante navegador web (502) de una estación cliente (504) , caracterizado por que comprende:

- una etapa de generación dinámica de un formulario de inicialización de cómputos (112) para la introducción por parte del usuario (500) de los parámetros, condiciones iniciales y de contorno del problema a resolver, donde dicha etapa de generación comprende:

• obtener el modelo concreto (200) de problema a resolver, según la selección del usuario (500) ;

• cargar una estructura XML de metadatos de código (202) asociada al modelo seleccionado;

• utilizar una plantilla de estilo avanzada XSL (204) para transformar (206) la estructura XML y mostrar al usuario el formulario de inicialización de cómputos asociado al modelo seleccionado;

• obtener los parámetros, condiciones iniciales y de contorno del problema del usuario (500) para la posterior ejecución en el clúster (508) ;

- una etapa de selección de los parámetros de ejecución (120) de los procesos a ejecutar en el clúster de computadoras (508) ;

- una etapa de inclusión de datos y compilación (122) , mediante la cual el clúster de computadoras (508) incluye los datos del formulario de inicialización de cómputos en el código del modelo seleccionado y realiza una compilación del código resultante en función de los parámetros de ejecución seleccionados por el usuario;

- una etapa de ejecución (126) del código resultante en nodos de cómputo del clúster (514) según los parámetros de ejecución seleccionados por el usuario.

2. Método según la reivindicación 1, caracterizado por que la etapa de inclusión de datos y compilación (122) comprende: - obtener recursos (300) necesarios para la compilación, incluyendo:

• plantilla XML asociada al modelo (302) que indica los datos de entrada necesarios;

• plantilla de código fuente (304) modificable con los datos de condiciones iniciales y de contorno y asociada al modelo seleccionado por el usuario;

• fichero XML (118) con los datos introducidos por el usuario en el formulario de inicialización de cómputos (112) ;

• biblioteca precompilada (308) asociada al modelo seleccionado por el usuario;

- con los recursos (300) obtenidos, generar un fichero de inicialización del código (310) y generar el código fuente personalizado (312) con los datos introducidos por el usuario en el formulario de inicialización de códigos (112) .

3. Método según cualquiera de las reivindicaciones anteriores, caracterizado por que la etapa de selección de los parámetros de ejecución (120) comprende la selección de nodos de cómputo del clúster

(514) para la ejecución.

4. Método según cualquiera de las reivindicaciones anteriores, caracterizado por que la etapa de selección de los parámetros de ejecución (120) comprende la selección de uno de los siguientes modos de ejecución:

- secuencial o paralelo;

- en arquitectura CPU o GPU.

5. Método según cualquiera de las reivindicaciones anteriores, caracterizado por que la etapa de ejecución (126) del código comprende:

- comprobar (400) el modo de ejecución seleccionado por el usuario;

- seleccionar los recursos (402) hardware del clúster necesarios para la ejecución, comprobando su disponibilidad (404) ;

- una vez los recursos hardware estén disponibles, llevar a cabo la ejecución (406) del código.

6. Método según cualquiera de las reivindicaciones anteriores, caracterizado por que la etapa de ejecución (126) del código comprende actualizar la base de datos del clúster (408) con los datos de la ejecución para permitir la monitorización por parte del usuario del estado de la ejecución mediante herramientas de monitorización del clúster y de los procesos en ejecución (108) incluidas en la interfaz de usuario (100) .

7. Método según cualquiera de las reivindicaciones anteriores, caracterizado por que comprende enviar al clúster de computadores (508) el formulario de inicialización de cómputos rellenado por el usuario para la verificación de errores (114) y la validación (116) del mismo.

8. Sistema de gestión remota de una plataforma de supercomputación mediante interfaz web, que comprende:

- un clúster de computadoras (508) con un servidor de acceso (510) , un front-end del clúster

(512) y una pluralidad de nodos de cómputo del clúster (514) ; y

- una interfaz de usuario (100) implementada mediante navegador web (502) de una estación cliente (504) ; caracterizado por que el servidor de acceso (510) está configurado para obtener el modelo concreto

(200) de problema a resolver según la selección del usuario (500) , dicho servidor de acceso (510) comprendiendo:

- un módulo de gestión de formularios encargado de la generación dinámica de un formulario de inicialización de cómputos (112) para la introducción por parte del usuario (500) de los parámetros, condiciones iniciales y de contorno del problema a resolver, mediante:

• la carga una estructura XML de metadatos de código (202) asociada al modelo seleccionado;

• la utilización una plantilla de estilo avanzada XSL (204) para transformar (206) la estructura XML y enviarla al navegador web (502) de la estación cliente (504) para que el formulario de inicialización de cómputos asociado al modelo seleccionado sea mostrado al usuario (500) ;

- un módulo de ejecución encargado de:

• recibir los parámetros de ejecución de los procesos a ejecutar en el clúster de computadoras (508) seleccionados por el usuario a través del navegador web (502) en la estación cliente (504) ;

• gestionar la ejecución de los procesos con el front-end del clúster (512) ; y por que el front-end del clúster (512) está configurado para:

• incluir los datos del formulario de inicialización de cómputos en el código del modelo seleccionado y realizar una compilación del código resultante en función de los parámetros de ejecución seleccionados por el usuario;

• ejecutar el código resultante en los nodos de cómputo del clúster (514) según los parámetros de ejecución seleccionados por el usuario.

9. Sistema según la reivindicación 8, caracterizado por que el servidor (510) está configurado para obtener y remitir al front-end del clúster (512) recursos (300) necesarios para la compilación, incluyendo:

• plantilla XML asociada al modelo (302) que indica los datos de entrada necesarios;

• plantilla de código fuente (304) modificable con los datos de condiciones iniciales y de contorno y asociada al modelo seleccionado por el usuario;

• fichero XML (118) con los datos introducidos por el usuario en el formulario de inicialización de cómputos (112) ; y por que el front-end del clúster (512) dispone de acceso a una biblioteca precompilada (308) asociada al modelo seleccionado por el usuario y está configurado para, con los recursos (300) obtenidos, generar un fichero de inicialización del código (310) y generar el código fuente personalizado (312) con los datos introducidos por el usuario en el formulario de inicialización de códigos (112) .

10. Sistema según cualquiera de las reivindicaciones 8 a 9, caracterizado por que los parámetros de ejecución incluye la selección de nodos de cómputo del clúster (514) para la ejecución.

11. Sistema según cualquiera de las reivindicaciones 8 a 10, caracterizado por que los parámetros de ejecución incluye la selección de uno de los siguientes modos de ejecución:

- secuencial o paralelo;

- en arquitectura CPU o GPU.

12. Sistema según cualquiera de las reivindicaciones 8 a 11, caracterizado por que para la ejecución (126) del código el front-end del clúster (512) está adicionalmente configurado para:

- comprobar (400) el modo de ejecución seleccionado por el usuario;

- seleccionar los recursos (402) hardware del clúster necesarios para la ejecución, comprobando su disponibilidad (404) ;

- una vez los recursos hardware estén disponibles, llevar a cabo la ejecución (406) del código.


 

Patentes similares o relacionadas:

Restauración de aceleración de servicio, del 10 de Junio de 2020, de Microsoft Technology Licensing, LLC: Un método para restaurar la aceleración del servicio para un servicio, el método que comprende: determinar que la aceleración del servicio para el […]

Ejecución del programa sobre plataforma heterogénea, del 29 de Abril de 2020, de UNIVERSITEIT GENT: Un método puesto en práctica por ordenador que comprende: - obtener un objeto de código informático intermedio que comprende, al menos, un […]

Método para determinar los trayectos paralelos de proceso en los datos del proceso, del 22 de Abril de 2020, de Celonis SE: Metodo implementado por ordenador para determinar trayectos de proceso paralelos en los datos del proceso en un sistema informatico que tiene un procesador, en donde - los […]

Método para determinar un tiempo de ejecución neto entre las etapas de un proceso de una instancia de proceso, del 22 de Abril de 2020, de Celonis SE: Metodo computarizado para determinar un tiempo de ejecucion neto entre las etapas de un proceso en un sistema informatico que tiene un procesador, en donde un dispositivo de memoria […]

Plataforma de seguridad gradual, del 8 de Abril de 2020, de Cyemptive Technologies, Inc: Un medio legible por ordenador no transitorio que almacena instrucciones para implementar seguridad gradual para un sistema que incluye un primer grupo […]

Renderización híbrida en procesamiento de gráficos, del 1 de Abril de 2020, de QUALCOMM INCORPORATED: Un procedimiento de procesamiento de gráficos, comprendiendo el procedimiento: realizar, con una unidad de procesamiento de gráficos (GPU), un pase de fragmento […]

Función de interrupción de seguimiento de advertencias, del 25 de Diciembre de 2019, de INTERNATIONAL BUSINESS MACHINES CORPORATION: Un sistema informático para facilitar el procesamiento en un entorno informático, comprendiendo dicho sistema informático: una memoria; y un procesador […]

Imagen de 'Gestión de comunicaciones'Gestión de comunicaciones, del 25 de Diciembre de 2019, de AMADEUS S.A.S.: Un sistema para terminales de operación remota que comprende: un servidor que comprende: una plataforma de virtualización de aplicaciones para virtualizar […]

Utilizamos cookies para mejorar nuestros servicios y mostrarle publicidad relevante. Si continua navegando, consideramos que acepta su uso. Puede obtener más información aquí. .