La empresa ofrece una nueva forma de paralelizar aplicaciones - Calendae | Informática, Electrónica, CMS, Ciberseguridad

La empresa ofrece una nueva forma de paralelizar aplicaciones

Hola de nuevo. En el teclado Simón Sánchez y en el día de hoy vamos a hablar sobre La empresa ofrece una nueva forma de paralelizar aplicaciones

Las empresas emergentes siempre comienzan con grandes ambiciones y Massively Parallel Technologies (MPT) no es una excepción. Esta semana, la compañía dio a conocer «Blue Cheetah», que describe como un «ecosistema total de aplicaciones» que tiene como objetivo revolucionar el modelo tradicional de desarrollo y distribución de software, particularmente para código altamente paralelo. La idea es mejorar el modelo de ROI automatizando el proceso de desarrollo de aplicaciones, llevando el software al mercado más rápido y haciéndolo ampliamente reutilizable.

Sin embargo, MPT no es exactamente una startup. La compañía con sede en Colorado existe desde 2000 y está en su tercer CEO. Los dos primeros, el fundador de la empresa, Scott Smith, y la estrella de HPC, John Gustafson, se encuentran ahora en la junta directiva. El ex ejecutivo de Linux Networx, Bobbi Hazard, es el actual director ejecutivo y supervisará el reinicio de MPT durante el lanzamiento del conjunto de herramientas Blue Cheetah. Kevin Howard, el CTO, que ha estado en la empresa desde sus inicios, ha encabezado la innovación técnica detrás de los productos, especialmente cuando se trata de técnicas de paralelización.

Durante los primeros años de la empresa, MPT ofreció productos y servicios bioinformáticos basados ​​en BLAST basados ​​en la tecnología «HOWARD» de la empresa. Utilizando parte de ese trabajo inicial, así como el desarrollo adicional realizado bajo un contrato del programa DARPA HPCS, la compañía ha desarrollado una nueva tecnología de comunicaciones paralelas que, según Hazard, es «una gran mejora sobre MPI y PVM». Según ella, más de la mitad de sus más de 400 solicitudes de patentes se basan en esta área de tecnología.

Pero Blue Cheetah va más allá de su nuevo esquema de comunicación. Abarca todo el ciclo de vida del software, desde el diseño, las pruebas y el desarrollo hasta la implementación, la concesión de licencias y la distribución de ingresos. Como dice Hazard, «por lo general, obtienes un conjunto de productos para hacer una cosa y otro conjunto de productos para hacer otra», dice Hazard. «No conozco ningún otro lugar donde puedas juntarlos todos».

Sin embargo, no todo esto está disponible hoy. Lo que MPT anunció esta semana es una versión beta de la plataforma de desarrollo de software de Blue Cheetah, llamada Cub. Con él, los desarrolladores pueden diseñar y desarrollar aplicaciones, así como compartir código con otros de forma colaborativa. Cub también genera automáticamente documentación de la aplicación basada en el proyecto. El resultado de esta herramienta es un ejecutable que se puede ejecutar en un entorno de un procesador. Si se desea la paralelización, esto se hace por separado más abajo en la cadena de herramientas.

La clave para el desarrollo de software de Blue Cheetah es extraer los elementos básicos del proceso de una aplicación, a la que llaman kernel, de las funciones de control. Básicamente, la idea es separar las matemáticas de la lógica de control del programa. Durante el diseño, el sistema traduce las especificaciones del kernel del desarrollador directamente en código ejecutable. Esto no es revolucionario en sí mismo; La traducción de pseudode a código se ha realizado con diversos grados de éxito durante décadas. En este caso, sin embargo, no hay un lenguaje de programación intermedio como C o Fortran con el que lidiar. El diseño en sí representa el origen del programa.

Las funciones de control incluyen las construcciones de bucle y if-then-else que envuelven las invocaciones del kernel. Convenientemente, Cub genera automáticamente todas las funciones de control por sí mismo, nuevamente, basándose en el diseño original. Esta descomposición funcional no solo libera al desarrollador de mantener el software de control, sino que también elimina la dependencia de los algoritmos del kernel en el hardware subyacente y los esquemas de paralelización posteriores.

Otro efecto secundario importante de este desglose es que los algoritmos son más fáciles de compartir entre aplicaciones. La reutilización de código es un elemento fundamental del esquema de monetización del software de MPT y durante la fase de diseño, el sistema dirige al desarrollador a los núcleos existentes que se pueden aplicar a su aplicación. Las coincidencias se basan en búsquedas de palabras clave, parámetros de entrada / salida, similitudes de conjuntos de datos, etc. Cualquier cosa, desde un solo algoritmo FFT hasta una biblioteca de aplicaciones completa, se puede compartir entre aplicaciones, llevándose consigo el acuerdo de licencia asociado con el código original. La elección de reutilizar los núcleos existentes en lugar de diseñar nuevos depende del desarrollador.

Una vez que se completa el diseño de la aplicación, se establece su licencia. El desarrollador determina la estructura de tarifas y configura el esquema de pago para su código. Blue Cheetah ofrece un modelo de pago por uso y un modelo de licencia más tradicional. La intención es ofrecer aplicaciones bajo demanda a través de su propio clúster «en la nube» de 256 nodos, pero MPT también otorgará licencias de Blue Cheetah a los clientes que deseen llevar todo el sistema a sus instalaciones.

Si los núcleos se reutilizan en varias aplicaciones, se pagará a los desarrolladores originales por cada uso. Es esencialmente lo opuesto al modelo de licencias de código abierto. MPT espera atraer tanto a desarrolladores comerciales como académicos, especialmente a aquellos frustrados con el modelo de negocio de «software libre». «Se formulará un ecosistema completo con el tiempo y crecerá a medida que se disponga de más núcleos y algoritmos», dice Hazard.

Blue Cheetah incluye características especiales para ayudar a los desarrolladores a paralelizar sus aplicaciones en el panorama de la computación en la nube, multinúcleo, multiprocesador, cluster, grid Esto ciertamente cubre la computación de alto rendimiento, pero cualquier aplicación de software que requiera una infraestructura de computación a gran escala (por ejemplo, computación en la nube, análisis de negocios, aplicaciones con uso intensivo de matemáticas, etc.) es un juego limpio. Hazard dice que tuvo un interés temprano de organizaciones que desarrollan aplicaciones de nanotecnología, biotecnología y juegos para múltiples jugadores.

Las aplicaciones de paralelismo serán ejecutadas por el próximo producto de Blue Cheetah llamado Coalition, cuyo lanzamiento está programado para enero de 2011. La herramienta tomará el código desarrollado bajo Cub y lo reestructurará automáticamente para maximizar el paralelismo, tanto para plataformas multinúcleo como de clúster . No está claro cómo se logra realmente esto, aunque una función de paralelización automática que ignora MPI y promete un mejor rendimiento debería despertar el interés de los desarrolladores de HPC.

Un producto separado llamado Savannah también estará disponible más adelante para insertar una aplicación Blue Cheetah en el firmware. Está destinado a usuarios que desean un rendimiento máximo o que ejecutan los tipos de aplicaciones integradas que requieren que la aplicación se ejecute localmente.

Otra herramienta futura de Blue Cheetah, llamada Spots, consumirá el código fuente existente y realizará la descomposición del control de procesos para que pueda colocarse en la plataforma Cub. Una vez en el sistema, la aplicación puede pasar por el resto de la cadena de herramientas de Blue Cheetah, incluida la paralelización automática. No se define cómo se produce esta transformación de código y qué tipos de código fuente se consideran consumibles, pero Hazard dio a entender que los códigos MPI heredados también podrían ser reestructurados por Spots. Esta herramienta también verifica el código entrante en busca de malware y plagio.

La redefinición del ecosistema de desarrollo de software es ciertamente mucho que abordar para una pequeña empresa. MPT no tiene fondos de capital de riesgo detrás. Pero la compañía ha atraído a un gran número de inversores ángeles para financiar el desarrollo del Blue Cheetah.

También lograron captar la atención de Gene Amdahl, un ícono de la informática que desarrolló la ley de paralelismo de software de Amdahl. Él está en la junta directiva de MPT y parece estar completamente impresionado con los productos Blue Cheetah. En un video en el sitio web de MPT, habla sobre la importancia de la computación paralela y la oportunidad que ofrece la tecnología de la empresa. «Revolucionará el mundo de la informática», dice.

Recuerda compartir en tu Facebook para que tus amigos lo vean

??? ? ? ???

Comparte