Estudio de la influencia de la entrada/salida en el rendimiento de los procesadores

  1. Rioja del Río, Carlos
Dirigida per:
  1. José María Rodríguez Corral Director
  2. Antonio Abad Civit Balcells Director/a

Universitat de defensa: Universidad de Cádiz

Fecha de defensa: 22 de de març de 2011

Tribunal:
  1. Julio Abascal González President/a
  2. Arturo Morgado Estévez Secretari
  3. Dieter Zöbel Vocal
  4. Gabriel Jiménez Moreno Vocal
  5. José Antonio Jiménez Millán Vocal
Departament:
  1. Ingeniería Informática

Tipus: Tesi

Teseo: 304029 DIALNET

Resum

El funcionamiento de los dispositivos de entrada/salida repercute negativamente en el rendimiento global del sistema y tal repercusión debe ser objeto de análisis, a fin de ser conocida con el suficiente nivel de detalle como para poder actuar sobre ella y disminuirla en la medida de lo posible. Por ello, se proponen dos objetivos generales para el presente trabajo: 1. Analizar la influencia que las operaciones de entrada/salida de los distintos periféricos que operan en un ordenador ejerce sobre el rendimiento del procesador y sobre los tiempos de ejecución de los programas. 2. Parametrizar dicha influencia mediante expresiones analíticas que cuantifiquen la posible disminución en el rendimiento del procesador debido a los bloqueos de la memoria principal causados por las operaciones de entrada/salida de los periféricos. Para la consecución de estos objetivos, realizaremos un estudio mediante simulación [SAR95][XAV96][ARA95]. De este modo, se desarrollan dos simuladores: uno para el subsistema procesador-memoria principal y otro para el subsistema de entrada/salida. El primer simulador se configura con los parámetros del procesador, de las memorias cache y de la memoria principal, mientras que el segundo acepta como entrada los parámetros del escenario de entrada/salida a simular. Obteniendo así las siguientes conclusiones: Se desarrolla un programa de simulación con el fin de determinar en qué medida influyen las operaciones de entrada/salida de los periféricos en el rendimiento de los procesadores con secuenciamiento estático. Se utiliza el programa anterior para evaluar el rendimiento de cuatro tipos de procesador en cuatro escenarios de entrada/salida distintos: captura de vídeo, captura de vídeo con reproducción, red de alta velocidad y transmisión serie. De este modo, se analiza la disminución en el rendimiento de los tipos de procesadores anteriormente referidos en virtud del efecto combinado de las operaciones de entrada/salida realizadas por los periféricos que intervienen en los escenarios, los bloqueos estructurales inherentes a la arquitectura de los procesadores y los bloqueos debidos a las dependencias de datos del programa de prueba cuya ejecución se simula. A partir de los experimentos realizados se han obtenido resultados interesantes y significativos. Se desarrolla un modelo matemático para realizar el análisis de prestaciones, el cual nos permite evaluar la disminución del rendimiento de los cuatro tipos de procesadores modelados en los cuatro escenarios de entrada/salida diseñados. Se amplia la funcionalidad del simulador del subsistema procesador-memoria principal para modelar procesadores con secuenciamiento dinámico. Asimismo, se extiende el análisis de prestaciones anteriormente citado a los resultados obtenidos a partir de nuevas simulaciones de ejecución del programa de prueba en cuatro tipo de procesadores con secuenciamiento dinámico y un número de estaciones de reserva configurable, en los cuatro escenarios de entrada/salida anteriores. A partir de los resultados obtenidos con este segundo programa de simulación, se evalúan las mejoras en el rendimiento aportadas por el secuenciamiento dinámico. De este modo, la relación de los ciclos por instrucción de un procesador con secuenciamiento dinámico frente a los de un procesador con idénticas características pero con secuenciamiento estático, da como resultado unas aceleraciones que aumentan conforme crece el número de estaciones de reserva del procesador con secuenciamiento dinámico. Así pues, se constata cómo los procesadores con secuenciamiento dinámico presentan una mayor inmunidad a los bloqueos de la memoria debido a las operaciones de entrada/salida de los periféricos que funcionan en el sistema. A partir del análisis de prestaciones realizado se ha desarrollado un sencillo modelo analítico mediante regresión inversa o hiperbólica de la evolución del rendimiento, medido en ciclos por instrucción (CPI), de un procesador concreto con secuenciamiento dinámico en un escenario de entrada/salida particular conforme aumenta el número de estaciones de reserva. Asimismo, el modelo analítico anterior permite obtener unas aceleraciones asintóticas en el caso ideal de que los procesadores con secuenciamiento dinámico dispongan de un número ilimitado de estaciones de reservas y, por tanto, no se originen bloqueos de datos debido a las posibles dependencias de datos del programa de prueba y se alcance así el límite de flujo de datos (data flow limit). Normalmente, los sistemas empotrados emplean procesadores con secuenciamiento dinámico y los programas que en ellos se ejecutan son optimizados mediante reordenación de código y desenrollado de bucles. Esta optimización es útil y el rendimiento de los sistemas empotrados es bueno siempre que no existan factores externos que influyan negativamente en el tiempo de ejecución de dichos programas. Como consecuencia de los resultados anteriormente obtenidos, queda de manifiesto la utilidad de incorporar procesadores con secuenciamiento dinámico en sistemas empotrados que deban soportar un volumen importante de transferencias de entrada/salida (una entrada/salida agresiva). En definitiva, como conclusión general se ha conseguido el objetivo propuesto: Analizar y cuantificar la influencia que las operaciones entrada/salida realizadas por los periféricos que funcionan en un sistema ejercen sobre el rendimiento del procesador de dicho sistema.