Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/08/2014, 03:52
Pantaláimon
 
Fecha de Ingreso: julio-2006
Ubicación: Barcelona
Mensajes: 244
Antigüedad: 17 años, 10 meses
Puntos: 32
Respuesta: Uso 100% CPU para un programa hecho en c++

Cita:
Iniciado por Malenko Ver Mensaje
El paralelismo no siempre se puede usar. Aquí estás siempre dependiendo del valor anterior para calcular el siguiente. Es decir, estarias trabajando con varios threads usando una variable compartida y a la que han de acceder de forma exclusiva. Si, va a subir el consumo de CPU pero porque son operaciones que son costosas, no porque aumente el rendimiento.
No tengo mucha experiencia en programación concurrente pero que el programa, tal como este construido, dependa del valor anterior, no quiere decir que se pueda contruir otro que haga lo mismo de otra manera. Pues al final, el programa parece que lo que hace es calcular un sumatorio de los logaritmos de 1 a 9999999999. Cada hilo podría encargarse de calcular partes del sumatorio, independientemente uno del otro y al terminar, sumarlo en una variable, accediendo de forma exclusiva.

Un saludo!
__________________
github.com/xgbuils | npm/xgbuils