Tecnología

Investigadores crean un sistema que acelera los programas informáticos sin errores

Se trata de la herramienta PaSh, que paraleliza los scripts que se ejecutan en el shell de Unix, haciéndolos seis veces más rápidos.

unix pash informática

Un grupo de investigadores del Laboratorio de Ciencias de la Computación e Inteligencia Artificial (CSAIL) del MIT, la Universidad de Pensilvania, el Instituto Staszic de Varsovia, Aarno Labs, Google y el Instituto Tecnológico Stevens, desarrollaron un sistema que permite ejecutar programas informáticos de forma mucho más rápida y sin incurrir en errores. 

La herramienta PaSh permite paralelizar los scripts que se ejecutan en el shell de Unix, un entorno de programación omnipresente con 50 años de antigüedad que aún se utiliza ampliamente, acelerando la velocidad de ejecución. 

Esto lo hace dividiendo los componentes del programa en piezas que pueden ejecutarse simultáneamente en varios procesadores de ordenador. Así, el sistema permite a los programas ejecutar tareas como la indexación de webs, el procesamiento del lenguaje natural o el análisis de datos en una fracción del tiempo que tomaba antes y manteniendo su precisión

Nikos Vasilakis, científico investigador del CSAIL, comentó que “hay mucha gente que utiliza este tipo de programas, como científicos de datos, biólogos, ingenieros y economistas. Ahora pueden acelerar automáticamente sus programas sin temor a obtener resultados incorrectos".

Tras testearlo en cientos de scripts, PaSh fue capaz de ejecutar los programas seis veces más rápido en promedio, alcanzando una velocidad máxima de casi 34 veces más rápido que los scripts no paralelizados. Todo, sin romper ni uno solo. 

Además, el sistema es un proyecto de código abierto, integrado recientemente a la Fundación Linux, por lo que está ampliamente disponible para los usuarios y el mundo académico, que pueden aportar con nuevas mejoras. 

 

Cómo funciona

PaSh, se centra en scripts que se ejecutan en el shell de Unix, que sigue siendo popular porque es el único entorno de programación que permite que un script se componga de funciones escritas en varios lenguajes de programación. 

A pesar de esto, su estructura flexible y dinámica hace que estos scripts sean difíciles de paralelizar con los métodos tradicionales, ya que algunas partes del programa dependen de otras, lo que determina el orden en que los componentes deben ejecutarse. Si el sistema se equivoca en el orden, el programa falla.

En ese sentido, PaSh paraleliza partes del script mientras el programa se está ejecutando, en el momento en que llega a cada componente, lo que se conoce como “justo a tiempo”. Esto garantiza que el programa acelerado siga devolviendo resultados precisos, ya que si el sistema llega a un componente que no puede ser paralelizado, simplemente ejecuta la versión original y evita causar un error.



TE PUEDE INTERESAR...

Accede a la cobertura de nuestros encuentros
 
Lee aquí nuestra revista digital de canal

DealerWorld Digital

 

Forma parte de nuestra comunidad
 
¿Interesado en nuestros foros? 

 

Whitepaper

Documento Pure Storage y Kyndryl INFRAESTRUCTURAS