Página 1 de 1

Open MP

Publicado: 22 Mar 2011, 22:02
por Yn$an€
Open MP es un software de paralelización compatible con los compiladores de la herramienta GNU GCC, que sirve para crear programas capaces de aprovechar múltiples CPU sin ello suponer grandes esfuerzos.

Funciona a través de directivas de compilación y podría ser útil para segmentar procesos complejos computacionalmente y así obtener grandes aumentos de rendimiento en máquinas multi-núcleo.

Mi pregunta es: Me valdrá la pena emplearlo en lugar de crear los procesos con las herramientas de wx (o pthreads, me da igual), o sólo sería recomendable aplicarlo en áreas concretas como decodificador de texturas etc, etc?

Re: Open MP

Publicado: 23 Mar 2011, 12:18
por m0skit0
Yo como mínimo lo probaría, aunque en teoría es el SO el que se encarga de repartir las tareas entre los procesadores, es decir, que aunque tú no lo hagas el kernel lo hará.

Re: Open MP

Publicado: 23 Mar 2011, 13:48
por Yn$an€
m0skit0 escribió:Yo como mínimo lo probaría, aunque en teoría es el SO el que se encarga de repartir las tareas entre los procesadores, es decir, que aunque tú no lo hagas el kernel lo hará.


A la orden 8-) Lo que me falta es decidir donde, porque por desgracia lo que tenemos hasta ahora es completamente secuencial. Según tengo entendido, si hago algo para que sea ejecutado de forma asíncrona creo un alto riego de que se produzca un bloqueo entre hilos.

De momento seguiré a ver si consigo separar la interfaz del resto del emu.

Las pruebas por ahora (de OpenMP) son un fracaso, no consigo que el compilador siga las directivas.

-- Doble Post --

Actualizo a que estoy... OpenMP sirve sobre todo para explotar paralelismo de datos, lo que no es demasiado útil en nuestro caso. Para descomposición de tareas, bueno, digamos que en un emu no hay mucho de eso.

Fin de la historia.