Runahead Threads
Total Page:16
File Type:pdf, Size:1020Kb
ADVERTIMENT . La consulta d’aquesta tesi queda condicionada a l’acceptació de les següents condicions d'ús: La difusió d’aquesta tesi per mitjà del servei TDX ( www.tesisenxarxa.net ) ha estat autoritzada pels titulars dels drets de propietat intel·lectual únicament per a usos privats emmarcats en activitats d’investigació i docència. No s’autoritza la seva reproducció amb finalitats de lucre ni la seva difusió i posada a disposició des d’un lloc aliè al servei TDX. No s’autoritza la presentació del seu contingut en una finestra o marc aliè a TDX (framing). Aquesta reserva de drets afecta tant al resum de presentació de la tesi com als seus continguts. En la utilització o cita de parts de la tesi és obligat indicar el nom de la persona autora. ADVERTENCIA . La consulta de esta tesis queda condicionada a la aceptación de las siguientes condiciones de uso: La difusión de esta tesis por medio del servicio TDR ( www.tesisenred.net ) ha sido autorizada por los titulares de los derechos de propiedad intelectual únicamente para usos privados enmarcados en actividades de investigación y docencia. No se autoriza su reproducción con finalidades de lucro ni su difusión y puesta a disposición desde un sitio ajeno al servicio TDR. No se autoriza la presentación de su contenido en una ventana o marco ajeno a TDR (framing). Esta reserva de derechos afecta tanto al resumen de presentación de la tesis como a sus contenidos. En la utilización o cita de partes de la tesis es obligado indicar el nombre de la persona autora. WARNING . On having consulted this thesis you’re accepting the following use conditions: Spreading this thesis by the TDX ( www.tesisenxarxa.net ) service has been authorized by the titular of the intellectual property rights only for private uses placed in investigation and teaching activities. Reproduction with lucrative aims is not authorized neither its spreading and availability from a site foreign to the TDX service. Introducing its content in a window or frame foreign to the TDX service is not authorized (framing). This rights affect to the presentation summary of the thesis as well as to its contents. In the using or citation of parts of the thesis it’s obliged to indicate the name of the author tesisdoctoral Runahead Threads Tanausú Ramírez García UNIVERSITAT POLITECNICA DE CATALUNYA Departament d’Arquitectura de Computadors c 2010 TANAUSU RAMIREZ GARCIA ALL RIGHTS RESERVED UNIVERSITAT POLITECNICA DE CATALUNYA Departament d’Arquitectura de Computadors Runahead Threads Tanaus´uRam´ırezGarc´ıa Advisors: Mateo Valero Universitat Politecnica` de Catalunya Alex Pajuelo Universitat Politecnica` de Catalunya Oliverio J. Santana Universidad de Las Palmas de Gran Canaria A THESIS SUBMITTED IN FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY (COMPUTER SCIENCE) DOCTOR POR LA UPC A mis padres, por su amor, apoyo y aliento ii Acknowledgments Esta tesis ha sido el resultado de una gran aventura fuera de mi tierra, Gran Canaria. Durante este largo camino, ha habido muchos momentos de alegr´ıay satisfacci´onper- sonal, as´ıcomo de malos y duros momentos. Sin embargo, he tenido la suerte de contar con el apoyo de muchas personas, a las cuales les quiero dedicar estas l´ıneaspues sin ellas no habr´ıallegado hasta aqu´ı. En primer lugar, quiero agradecer a mi director de tesis, Mateo Valero, por su confi- anza en m´ıdesde el principio. Sin a´unconocerme, me invit´oa una cena de un congreso nacional, y le bast´oun trayecto en su coche desde Lleida a Barcelona para animarme a hacer el doctorado. Mateo me ha brindado su ayuda, sus conocimientos y su apoyo, as´ıcomo la oportunidad de comenzar mi carrera investigadora en el Departamento de Arquitectura de Computadores (DAC) de la UPC. Igualmente, quiero dar las gracias a mis otros directores de tesis. A Alex Pajuelo, por su confianza e infalible ayuda tanto en el aspecto profesional como en el personal para que este trabajo saliera adelante. A Oliver Santana, por su dedicaci´ony ayuda prestada en todo momento tanto aqu´ıcomo desde la distancia. Posiblemente esta tesis no estar´ıaterminada sin vuestra ayuda, simplemente gracias. Para realizar esta tesis tuve que moverme de Las Palmas a Barcelona, y con ello dej´eatr´asa mi familia y muchos amigos en Canarias. En este viaje, agradecer es- pecialmente a Carmelo Acosta, amigo y compa~nerodesde el colegio, Javier Verd´uy Fran Cazorla compa~nerostambi´enen la ULPGC. Todos ellos, ya doctores, tomaron previamente el mismo camino que yo, anim´andomea venir, haciendo mi llegada m´as f´acily ayud´andomeen todas las situaciones durante estos a~nos. Gracias Carmelo y Hema por ofrecerme vuestra casa, pero especialmente vuestra compa~n´ıaen los primeros momentos. Una vez aqu´ı, tambi´enhe conocido a nuevas personas estupendas, que adem´asde compa~nerosde doctorado se han convertido en muy buenos amigos. Entre ellos, quiero mencionar especialmente a Josep Mar´ıaCodina, Ayose Falc´on,Ana Bosque, Jaume Abella y Rub´enGran. Me gustar´ıaagradecerles su apoyo, ´animo,amistad y compa~n´ıa iii en las diferentes etapas de esta tesis, pero sobre todo gracias por los momentos de diversi´onque me ayudaron a superar los obst´aculoscon alegr´ıa. Tambi´enagradecer a tantos otros compa~nerosdel DAC que he ido conociendo durante estos a~nos,y con los cuales he podido compartir reuniones de trabajo, sala de becarios, horas de comida, caf´esy muchas otras actividades: Adri´anCristal, Marco Galluzi, Alejandro Garc´ıa,Beatriz Otero, Jordi Guitart, Germ´anRodr´ıguez,Lloren¸c Cruz, Ramon Canal, Ferm´ınSanchez, Javi Alonso, Miquel Moreto... y muchos m´as que espero que no se molesten por no nombrar aqu´ı.Igualmente dar las gracias al resto de profesores y miembros del departamento que lo conforman y lo hacen uno de los m´asimportantes del mundo en su ´areade conocimiento. Del mismo modo, destacar que todo este trabajo ha sido financiado por la beca FPU AP2003-3682 del Ministerio de Educaci´ony Ciencia, as´ı como por las l´ıneas de investigaci´onde la Comisi´onInterministerial de Ciencia Y Tecnolog´ıa (CICYT) TIN-2004-07739 y TIN2007-60625, y tambi´enpor la red europea de excelencia High Performance Embedded Architectures and Compilers (HiPEAC). Personalmente, esta tesis no s´oloha supuesto un reto profesional sino seguramente un gran cambio en mi vida. Gracias a la tesis, he podido conocer otra tierra, otra gente, viajar y realizar muchas otras actividades, como entrar en el mundo de la salsa. Y as´ı, bailando salsa, he podido desconectar de las situaciones de estr´esy abatimiento en los momentos m´asdif´ıciles.Pero lo m´asimportante es que he conocido a muchas personas salseras que valen la pena, Oscar, Susana, Joaqu´ın, Cristina Robles, Eva, Cristina Salinas, Luba, Patrick... y a las cuales quiero agradecerles los muchos momentos de diversi´ony amistad que han compartido conmigo. De manera muy especial, quiero dar las gracias de todo coraz´ona Judit, la persona m´asmaravillosa que he podido conocer, pues su forma de ser transform´onuestro baile en amor. No tengo palabras para agradecerle su cari~nosacompa~n´ıa, por haberme apoyado y alentado repetidas veces, pues gracias a ella encontr´elas fuerzas necesarias para llegar hasta el final. Y, por supuesto, gracias por todo el amor con el que me rodeas, del cual espero disfrutar toda mi vida. Finalmente, mis m´asprofundo y sentido agradecimiento a mi familia, que con amorosa paciencia, y entreg´andomesu incondicional ayuda, tambi´enme han apoyado en esta etapa de mi vida, soportando la distancia que nos separaba. Mi madre Yolanda, mi padre Antonio, mi hermana Yurena, y mi abuela Tata, a pesar de la distancia siem- pre pude sentir su cari~no.Les quiero mucho. iv Abstract The evolution of processors has been supported by both the rapid technology advance and smart architecture designs. Until recently, processors mainly focused on exploit- ing instruction-level parallelism (ILP) to improve the performance. Nevertheless, the combination of the practical limits to superscalar processor implementations, the theo- retical limits of instruction-level parallelism, and the increment of power constraints has forced different changes in processor designs. In this sense, the computer architecture community turns to new research towards other forms of parallelism. Fruit of this trend, thread-level parallelism (TLP) has become a common strategy for improving processor performance. Simultaneous Multithreading (SMT) is one of these new paradigms to exploit TLP in recent years. The main feature of SMT pro- cessors is to simultaneously execute multiple threads to increase the utilization of the pipeline by sharing many more resources than in other types of processors. However, the memory wall problem is still present in these processors. Memory-intensive threads tend to use processor and memory resources poorly creating resource contention prob- lems. This kind of threads can clog up shared resources due to long-latency memory operations without making progress on a SMT processor, thereby hindering the overall system performance. In this dissertation, we target these problems with a two-fold objective: to improve the performance of these multithreading processors and to propose techniques to be as efficient as possible inside the current power constraints. To cover these goals, this dissertation firstly proposes Runahead Threads (RaT) to alleviate the memory wall problem, and secondly, provides additional techniques to improve the efficiency of our initial proposal. v vi Contents 1 Introduction1 1.1 Multithreaded models...........................2 1.1.1 Simultaneous Multithreaded Processors..............4 1.1.2 SMT trends.............................5 1.2 Thesis overview...............................6 1.2.1 The motivation: SMT problems..................6 1.2.2 The approach: Runahead Threads.................9 1.3 Thesis contributions............................ 11 1.4 List of publications............................