30.07.2015 Views

Actas JP2011 - Universidad de La Laguna

Actas JP2011 - Universidad de La Laguna

Actas JP2011 - Universidad de La Laguna

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Actas</strong> XXII Jornadas <strong>de</strong> Paralelismo (<strong>JP2011</strong>) , <strong>La</strong> <strong>La</strong>guna, Tenerife, 7-9 septiembre 2011<strong>de</strong> planificación para AMPs que es capaz <strong>de</strong> combinarambas técnicas. CAMP toma <strong>de</strong>cisiones <strong>de</strong> planificaciónen base al factor <strong>de</strong> utililidad <strong>de</strong> las aplicaciones,métrica que aproxima, en función <strong>de</strong>l ILP y TLP <strong>de</strong>una aplicación, el speedup global que ésta obtendríasi se permite que sus hilos <strong>de</strong> ejecución utilicen todoslos cores rápidos y complejos en el sistema, conrespecto a una ejecución don<strong>de</strong> sólo se utilizan coressimples. Para calcular el factor <strong>de</strong> utilidad <strong>de</strong> un hilo<strong>de</strong> ejecución es preciso conocer su factor <strong>de</strong> ganancia,beneficio relativo que este experimenta al ejecutaren un core rápido con respecto a uno lento. En estetrabajo proponemos una metodología para el diseñosistemático <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> estimación <strong>de</strong> factores <strong>de</strong>ganancia.Para la evaluación <strong>de</strong>l planificador CAMP –implementado en el sistema operativo OpenSolaris–utilizamos un prototipo <strong>de</strong> sistema asimétrico diseñadoen Intel <strong>La</strong>bs [6]. A diferencia <strong>de</strong> la asimetríaen rendimiento que se consigue mediante la reducción<strong>de</strong> la frecuencia <strong>de</strong> trabajo en algunos cores –técnica<strong>de</strong> emulación ampliamente usada por la comunidadcientífica [7], [4], [8], [5]–, este prototipo mo<strong>de</strong>la <strong>de</strong>manera más realista el tipo <strong>de</strong> asimetría que se suponeestará presente en futuros sistemas asimétricos,don<strong>de</strong> los cores exhiben diferencias más profundas anivel microarquitectónico [6].Este artículo consta <strong>de</strong> las siguientes secciones: lasección II analiza trabajos previos sobre planificaciónen AMPs; la sección III presenta el diseño y la implementación<strong>de</strong>l algoritmo CAMP; en la sección IV<strong>de</strong>scribimos el proceso <strong>de</strong> generación <strong>de</strong> mo<strong>de</strong>los <strong>de</strong>estimación <strong>de</strong> factores <strong>de</strong> ganancia; en la sección Vse muestran los resultados experimentales obtenidos;finalmente en la sección VI se enumeran las principalesconclusiones <strong>de</strong> este trabajo.II. Antece<strong>de</strong>ntes y trabajos relacionadosEn esta sección realizamos un análisis <strong>de</strong> las propuestasprevias comenzando por aquellas que explotanespecialización <strong>de</strong> ILP. Posteriormente analizamosaquellos trabajos que estudian las capacida<strong>de</strong>s<strong>de</strong> los sistemas AMP para mitigar la ley <strong>de</strong> Amdahl.Kumar y otros [1], [2], hacen uso <strong>de</strong> los procesadoresAMP para explotar la diversidad <strong>de</strong> factores<strong>de</strong> ganancia 1 –SF (speedup factor)– presente en unacarga <strong>de</strong> trabajo multiprogramada. <strong>La</strong>s aplicacionescon SF alto usan efecientemente los recursos hardwarepresentes en los cores rápidos y complejos queestán <strong>de</strong>stinados a la extracción <strong>de</strong> ILP. Asignandolas aplicaciones con SF alto a los cores complejos ylas aplicaciones con SF bajo a los cores simples, sealcanzan incrementos en el rendimiento <strong>de</strong> hasta un63 % frente a un SMP <strong>de</strong> área similar [2].Los algoritmos propuestos por Kumar [2] y Becchi[3] requieren ejecutar las aplicaciones tanto encores simples como complejos para calcular su SF.1 El factor <strong>de</strong> ganancia (SF) <strong>de</strong> un hilo <strong>de</strong> ejecución se <strong>de</strong>fineformalmente como IPS fast /IPS slow , don<strong>de</strong> IPS fast y IPS slowson el número <strong>de</strong> instrucciones por segundo (IPS) <strong>de</strong>l hilo encores rápidos y lentos, respectivamente.El factor <strong>de</strong> ganancia <strong>de</strong> cada aplicación se aproximamediante el cociente <strong>de</strong>l número <strong>de</strong> instruccionesretiradas por segundo (IPS) <strong>de</strong> la aplicación en coresrápidos y lentos. En un trabajo previo <strong>de</strong>tectamosque esta técnica <strong>de</strong> medición directa <strong>de</strong> SFs introduceserios problemas <strong>de</strong> rendimiento, y mostramos quecalcular SFs <strong>de</strong> esta forma resulta inapropiado en lapráctica [7]. El empleo <strong>de</strong> técnicas <strong>de</strong> estimación <strong>de</strong>lfactor <strong>de</strong> ganancia a partir <strong>de</strong> medidas <strong>de</strong> rendimiento<strong>de</strong> la aplicación en un solo tipo <strong>de</strong> core permitesubsanar las limitaciones <strong>de</strong> la medición directa <strong>de</strong>lSF [9], [10]. Por este motivo, el planificador CAMPemplea mecanismos <strong>de</strong> estimación.Los sistemas AMP se han estudiado también comoplataformas para mitigar la ley <strong>de</strong> Amdahl. Hilly Marty [11] <strong>de</strong>dujeron mo<strong>de</strong>los teóricos para el speedupen arquitecturas AMP. Annavaram [4] propusoun planificador a nivel <strong>de</strong> aplicación que asigna acores rápidos las secuenciales explícitas presentes enuna aplicacion paralela, mitigando la ley <strong>de</strong> Amdahl<strong>de</strong> manera efectiva. En un trabajo previo presentamosel algoritmo PA (Paralelism-Aware), el primeralgoritmo implementado en un sistema operativo realque explota especialización <strong>de</strong> TLP [5]. A diferencia<strong>de</strong> la propuesta <strong>de</strong> Annavaram, el algoritmo PA ofrecesoporte para cargas <strong>de</strong> trabajo con múltiples aplicacionesy garantiza la aceleración <strong>de</strong> fases secuencialesen aplicaciones paralelas <strong>de</strong> forma totalmentetransparente, sin requerir modicación alguna en elcódigo fuente <strong>de</strong> la aplicación.III. Diseño e implementación<strong>La</strong>s asignaciones <strong>de</strong> hilos a cores realizadas porCAMP se llevan a cabo en base al factor <strong>de</strong> utilidad<strong>de</strong> cada hilo. Dado un sistema AMP con NFC coresrápidos, el factor <strong>de</strong> utilidad <strong>de</strong> un hilo <strong>de</strong> ejecución–UF (Utility Factor)– es una métrica que permiteaproximar el speedup que la aplicación al que el hilopertenece experimenta si NFC <strong>de</strong> sus hilos se asignana cores rápidos y el resto a cores lentos, con respectoa una ejecución don<strong>de</strong> solo se utilizan cores lentos.<strong>La</strong> fórmula para el UF, que se ha obtenido usandouna aproximación analítica <strong>de</strong>scrita en [12], es <strong>de</strong> lasiguiente forma:UF =SF − 1(⌊ N threads−1NF C⌋ + 1) 2 + 1 (1)En la fórmula, N threads es el número <strong>de</strong> hilos <strong>de</strong>ejecución activos <strong>de</strong> la aplicación. Este valor, que esvisible a nivel <strong>de</strong> sistema operativo, permite aproximareficientemente el paralelismo a nivel <strong>de</strong> hilo(TLP) <strong>de</strong> la aplicación [5]. SF es el factor <strong>de</strong> ganacia<strong>de</strong>l hilo <strong>de</strong> ejecución. <strong>La</strong> sección IV <strong>de</strong>scribe cómoCAMP aproxima el SF en tiempo <strong>de</strong> ejecución usandolos contadores hardware <strong>de</strong>l procesador.CAMP clasifica los hilos en cuatro clases <strong>de</strong> utilidad–VERY LOW, LOW, MEDIUM y HIGH– quese asignan en función <strong>de</strong> sus UFs. Esta aproximaciónbasada en clases permite mitigar algunas imprecisionesen la estimación <strong>de</strong> los factores <strong>de</strong> ganancia(SFs), usados para el cómputo <strong>de</strong>l UF, así como pa-<strong>JP2011</strong>-246

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!