Diferencia entre revisiones de «Computación paralela»

Contenido eliminado Contenido añadido
Sin resumen de edición
Piero71 (discusión · contribs.)
Deshecha la edición 29526097 de 201.144.84.82 (disc.) Posible bandalismo
Línea 3:
La '''computación paralela''' es una técnica de [[programación]] en la que muchas [[instrucción|instrucciones]] se ejecutan simultáneamente.<ref>G.S. Almasi and A. Gottlieb. [http://portal.acm.org/citation.cfm?id=1011116.1011127 Highly Parallel Computing]. Benjamin-Cummings publishers, Redwood city, CA, 1989.</ref> Se basa en el principio de que los problemas grandes se pueden dividir en partes más pequeñas que pueden resolverse de forma [[concurrencia|concurrente]] ("en paralelo"). Existen varios tipos de computación paralela: [[paralelismo a nivel de bit]], [[paralelismo a nivel de instrucción]], [[paralelismo de datos]] y [[paralelismo de tareas]]. Durante muchos años, la computación paralela se ha aplicado en la [[computación de altas prestaciones]], pero el interés en ella ha aumentado en los últimos años debido a las restricciones físicas que impiden el [[escalado en frecuencia]]. La computación paralela se ha convertido en el paradigma dominante en la [[aquitectura de computadores]], principalmente en los [[procesadores multinúcleo]].<ref name="View-Power">Krste Asanovic et al. [http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-183.pdf The Landscape of Parallel Computing Research: A View from Berkeley] (PDF). University of California, Berkeley. Technical Report No. UCB/EECS-2006-183. [[December 18]], [[2006]]: "Old [conventional wisdom]: Increasing clock frequency is the primary method of improving processor performance. New [conventional wisdom]: Increasing parallelism is the primary method of improving processor performance&nbsp;... Even representatives from Intel, a company generally associated with the 'higher clock-speed is better' position, warned that traditional approaches to maximizing performance through maximizing clock speed have been pushed to their limit."</ref> Sin embargo, recientemente, el [[consumo de energía]] de los ordenadores paralelos se ha convertido en una preocupación.<ref>Asanovic et al. Old [conventional wisdom]: Power is free, but transistors are expensive. New [conventional wisdom] is [that] power is expensive, but transistors are "free".</ref>
 
Los ordenadores paralelos se pueden clasificar según el nivel de paralelismo que admite su hardware: los ordenadores [[multinúcleo]] y [[multiprocesamiento simétrico|multiproceso]] tienen varios elementos de procesamiento en una sola máquina, mientras que los [[cluster (informática)|clusters]], los [[procesamiento paralelo masivo|MPP]] y los [[Computación grid|grids]] emplean varios ordenadores para trabajar en la misma tarea.1313
 
Los [[Algoritmo paralelo|programas de ordenador paralelos]] son más difíciles de escribir que los secuenciales<ref>[[David A. Patterson (scientist)|Patterson, David A.]] and [[John L. Hennessy]] (1998). ''Computer Organization and Design'', Second Edition, Morgan Kaufmann Publishers, p.&nbsp;715. ISBN 1-55860-428-6. </ref> porque la concurrencia introduce nuevos tipos de [[error de software|errores de software]], siendo las [[condiciones de carrera]] los más comunes. La [[Networking|comunicación]] y la [[sincronización]] entre las diferentes subtareas son típicamente las grandes barreras para conseguir un buen rendimiento de los programas paralelos. El [[speedup|incremento de velocidad]] que consigue un programa como resultado de la paralelización viene dado por la [[ley de Amdahl]].