Los microhilos son funciones que pueden ejecutarse en paralelo [1] para obtener un mayor rendimiento en los microprocesadores . Proporcionan un modelo de ejecución que utiliza unas pocas instrucciones adicionales en un procesador convencional para dividir el código en fragmentos que se ejecutan simultáneamente. Las dependencias se gestionan haciendo que los registros de los microprocesadores que ejecutan el código se sincronicen, de modo que un microhilo esperará a que otro produzca datos.
Esta es una forma de flujo de datos . Este modelo se puede aplicar a una arquitectura de conjunto de instrucciones existente de forma incremental al proporcionar solo cinco nuevas instrucciones para implementar controles de concurrencia. Un conjunto de microhilos es una partición estática de un bloque básico en fragmentos que se ejecutan simultáneamente , que se ejecutan en un solo procesador y comparten un microcontexto. Un iterador sobre un conjunto proporciona una familia dinámica y paramétrica de microhilos. Los iteradores capturan la concurrencia de bucles y se pueden programar para diferentes procesadores. Un iterador sobre un conjunto se crea de forma dinámica y se denomina familia de microhilos. Este es el mecanismo que permite que el modelo genere concurrencia, que se puede ejecutar en varios procesadores o unidades funcionales.
Véase también
Referencias
- ^ Helmut Grohne (2006). "Tutorial de libmuth: Microthreads". subdivi.de . Consultado el 26 de julio de 2017 .
Enlaces externos
- Sitio web de la CSA