[C con Clase] Threads en C
Programante
programante en gmail.com
Jue Jun 26 21:14:34 CEST 2008
Raúl, dice que lo está ejecutando en un QuadCore, así que tiene varios
procesadores y sí debería mejorar (introducir hilos genera sobrecarga,
pero debería superarla el diseño paralelo).
Alnavegante, ¿cuál es el código exacto que usas? Tanto el código que
crea los hilos como el que ejecutas dentro (vale un ejemplo, si da ese
resultado).
Sólo se me ocurre que estés creando los hilos mal y se esté ejecutando
en realidad en paralelo (por ejemplo si tuvieras un mutex dentro de f) o
que por algún motivo estés dinamitando el mecanismo de caché entre los
dos hilos.
Por otro lado, ten en cuenta que *no estás obteniendo el mismo
resultado* en la versión paralela que en la secuencial. Estás asignando
f() del siguiente (sin procesar) con el anterior (procesado), pero al
dividirlo en dos, para dimy/2 se calcula f() del siguiente (sin
procesar) con el anterior (sin procesar... posiblemente).
Más información sobre la lista de distribución Cconclase