Vergonzosamente paralelo


En la computación paralela , una carga de trabajo o problema vergonzosamente paralelo (también llamado vergonzosamente paralelizable , perfectamente paralelo , deliciosamente paralelo o agradablemente paralelo ) es uno en el que se necesita poco o ningún esfuerzo para separar el problema en una serie de tareas paralelas. [1] Este suele ser el caso cuando hay poca o ninguna dependencia o necesidad de comunicación entre esas tareas paralelas, o de resultados entre ellas. [2]

Por lo tanto, estos son diferentes de los problemas de computación distribuida que necesitan comunicación entre tareas, especialmente comunicación de resultados intermedios. Son fáciles de realizar en granjas de servidores que carecen de la infraestructura especial utilizada en un verdadero clúster de supercomputadoras . Por lo tanto, se adaptan bien a grandes plataformas distribuidas basadas en Internet, como BOINC , y no sufren una desaceleración paralela . Lo contrario de los problemas vergonzosamente paralelos son problemas intrínsecamente seriales , que no se pueden paralelizar en absoluto.

Un ejemplo común de un problema vergonzosamente paralelo es la reproducción de video 3D manejada por una unidad de procesamiento de gráficos , donde cada cuadro (método de avance) o píxel ( método de trazado de rayos ) se puede manejar sin interdependencia. [3] Algunas formas de descifrado de contraseñas son otra tarea vergonzosamente paralela que se distribuye fácilmente en unidades centrales de procesamiento , núcleos de CPU o clústeres.

"Vergonzosamente" se usa aquí en el mismo sentido que en la frase "una vergüenza de riquezas ", que significa una sobreabundancia, refiriéndose aquí a problemas de paralelización que son "vergonzosamente fáciles". [4] El término también puede implicar vergüenza por parte de los desarrolladores o compiladores: "Debido a que muchos problemas importantes siguen sin resolverse debido principalmente a su complejidad computacional intrínseca, sería vergonzoso no desarrollar implementaciones paralelas de métodos de continuación de homotopía polinomial ". [5] El término se encuentra por primera vez en la literatura en un libro de 1986 sobre multiprocesadores del creador de MATLAB , Cleve Moler , [6] quien afirma haber inventado el término.[7]

Un término alternativo, agradablemente paralelo , ha ganado algún uso, quizás para evitar las connotaciones negativas de vergüenza en favor de una reflexión positiva sobre la paralelización de los problemas: "Por supuesto, estos programas no tienen nada de vergonzoso". [8]