Libro en PDF - DIT - Universidad Politécnica de Madrid
Libro en PDF - DIT - Universidad Politécnica de Madrid
Libro en PDF - DIT - Universidad Politécnica de Madrid
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Complejidad y Tecnologías <strong>de</strong> la InformaciónProcesadores múltiples. La reducción <strong>de</strong>l precio <strong>de</strong> los procesadores completosha producido un interés creci<strong>en</strong>te <strong>en</strong> las máquinas que incorporan varios procesadorescomo elem<strong>en</strong>tos básicos <strong>de</strong> bajo coste. En estos sistemas cada procesadorse pue<strong>de</strong> programar completam<strong>en</strong>te y ejecutar su propio programa, <strong>de</strong> esta formase consigue una flexibilidad mucho mayor que <strong>en</strong> las estructuras anteriores aunqueesta flexibilidad se traduce <strong>en</strong> una complejidad mucho mayor <strong>en</strong> el control y laprogramación. Con este tipo <strong>de</strong> diseño se pued<strong>en</strong> conseguir factores <strong>de</strong> aceleracióncasi lineales pero exist<strong>en</strong> una serie <strong>de</strong> factores a t<strong>en</strong>er <strong>en</strong> cu<strong>en</strong>ta: si los procesadoresse han <strong>de</strong> coordinar cada cierto tiempo, las prestaciones se v<strong>en</strong> seriam<strong>en</strong>teafectadas, exist<strong>en</strong> muchos procesos que no son paralelizables y sólo se pued<strong>en</strong>ejecutar <strong>de</strong> forma secu<strong>en</strong>cial, los algoritmos paralelos requier<strong>en</strong> más pasos quelos secu<strong>en</strong>ciales y una sobrecarga adicional para gestionar ese paralelismo, quevarios procesadores compartan recursos pue<strong>de</strong> ral<strong>en</strong>tizar mucho <strong>de</strong>terminadosprocesos y, finalm<strong>en</strong>te, operaciones como la <strong>en</strong>trada/salida pued<strong>en</strong> llegar aconsumir un tanto por ci<strong>en</strong>to muy elevado <strong>de</strong>l tiempo <strong>de</strong> computación reduci<strong>en</strong>dolas v<strong>en</strong>tajas <strong>de</strong>l paralelismo.Estos son los cinco tipos básicos <strong>de</strong> arquitecturas paralelas. Por supuesto, sepodrían hacer muchas otras clasificaciones (tema que ya tratamos al hablar <strong>de</strong> lastaxonomías) at<strong>en</strong>di<strong>en</strong>do a criterios diversos. Aparte <strong>de</strong> esta clasificación, la otraforma <strong>de</strong> estudiar los ord<strong>en</strong>adores paralelos es at<strong>en</strong>di<strong>en</strong>do a las conexiones <strong>en</strong>trelos difer<strong>en</strong>tes elem<strong>en</strong>tos que los forman:- Arrays sistólicos. Una forma muy efici<strong>en</strong>te <strong>de</strong> conectar los elem<strong>en</strong>tos <strong>de</strong>proceso es realizar estas conexiones <strong>de</strong> acuerdo con la tarea que van a realizar.La solución no es flexible <strong>en</strong> absoluto (una vez establecidas las conexiones, losprocesadores sólo funcionarán efici<strong>en</strong>tem<strong>en</strong>te con la aplicación para la que fueronadaptados) pero se consigu<strong>en</strong> soluciones muy optimizadas. El problema fundam<strong>en</strong>talque pres<strong>en</strong>tan es que esa optimización sólo ocurre <strong>en</strong> el proceso <strong>de</strong> losdatos haci<strong>en</strong>do que la Entrada/Salida sea vital para conseguir unas bu<strong>en</strong>asprestaciones.- Re<strong>de</strong>s <strong>de</strong> Banyan. Para solucionar la falta <strong>de</strong> flexibilidad <strong>de</strong> los arrays sistólicos,se pued<strong>en</strong> sustituir algunos elem<strong>en</strong>tos <strong>de</strong> proceso por conmutadores programablesque permitan cambiar la configuración <strong>de</strong> la red <strong>de</strong> procesadores ampliando elabanico <strong>de</strong> posibilida<strong>de</strong>s a las que es aplicable, esto son las re<strong>de</strong>s <strong>de</strong> Banyan.Ti<strong>en</strong><strong>en</strong> la gran v<strong>en</strong>taja <strong>de</strong> que como la conmutación es hardware, no haypérdida <strong>de</strong> efici<strong>en</strong>cia <strong>en</strong> los cálculos. Algunas aplicaciones <strong>de</strong> este tipo <strong>de</strong>re<strong>de</strong>s también solucionan <strong>en</strong> parte el problema <strong>de</strong> la E/S <strong>de</strong>jando los datosfijos y realizando operaciones sucesivam<strong>en</strong>te sobre éstos.- Cubos-k. Los cubos k-binarios conectan 2 k procesadores. Las conexiones sehac<strong>en</strong> <strong>en</strong>tre los vértices (procesadores) <strong>de</strong> un cubo <strong>de</strong> k dim<strong>en</strong>siones. En lafigura aparece el caso k=3. Este tipo <strong>de</strong> conexiones ofrec<strong>en</strong> muchas rutas <strong>de</strong>246