Paralelismo (informática)
De Wikipedia, la enciclopedia encyclopedia
En la informática, el paralelismo es la simple aplicación de múltiples CPU a un problema único. Se trata de un concepto intuitivo y atractivo. Considérese un problema científico o de ingeniería computacional en el que se ha estado trabajando. Si ejecutarlo en una sola CPU da como resultado 10 horas, ¿por qué no usar 10 CPU y obtener los resultados después de solo una hora? Para la ciencia computacional, supera algunas de las limitaciones impuestas por las computadoras con una sola CPU, pudiendo resolver problemas más grandes y complejos cuyos datos de entrada o resultados intermedios superan la capacidad de memoria de una CPU. De esta forma, las simulaciones se pueden ejecutar con una resolución más fina y un fenómeno físico se puede modelar de manera más realista.
En la práctica, el paralelismo tiene un precio elevado. En los procesos paralelos, la gramática implica una curva de aprendizaje pronunciada, además de un esfuerzo intensivo; el programador debe pensar en la aplicación de nuevas formas y puede terminar reescribiendo prácticamente todo el código. El entorno de ejecución de una computadora paralela es inherentemente inestable e impredecible. Las técnicas para depurar y ajustar el rendimiento de los programas en serie no se extienden fácilmente al mundo paralelo. Es posible trabajar meses en la paralelización de una aplicación sólo para descubrir que produce resultados incorrectos o que funciona más lento que antes.
El paralelismo es una forma de computación en la cual varios cálculos pueden realizarse simultáneamente,[1] basado en el principio de dividir los problemas grandes para obtener varios problemas pequeños, que son posteriormente solucionados en paralelo. Hay varios tipos diferentes de paralelismo: nivel de bit, nivel de instrucción, de datos y de tarea. El paralelismo ha sido empleado durante muchos años, sobre todo para la Computación de alto rendimiento.