Escribí un programa de subprocesos múltiples que hace algunos cálculos pesados de CPU con muchas operaciones de coma flotante. Más específicamente, es un programa que compara las secuencias de animación cuadro por cuadro. Es decir. compara datos de fotograma de la animación A con todos los fotogramas de la animación B, para todos los fotogramas de la animación A. Realizo esta operación intensiva para diferentes animaciones en paralelo, por lo que el programa puede estar trabajando en par AB, par BC y par CA en paralela. El programa está utilizando QtConcurrent y una función de "mapa" que mapea un contenedor con movimientos en una función. QtConcurrent administra el grupo de subprocesos para mí, estoy trabajando en el procesador Intel Quad Core, por lo que genera 4 subprocesos.Cómo reducir el uso de CPU de un programa?
Ahora, el problema es que mi proceso destruye mi CPU. El uso es 100% constante y en realidad obtengo una pantalla azul de la muerte si ejecuto mi programa en un conjunto de movimientos lo suficientemente grande (falta de página en el área no paginada). Sospecho que esto se debe a que mi computadora está overclockeada. Sin embargo, ¿podría ser por la forma en que codifiqué mi programa? Algunas herramientas de Benchamrking muy intensas que usé para probar la estabilidad de mi máquina nunca se estrellaron en mi PC. ¿Hay alguna manera de controlar cómo mi programa usa mi CPU para reducir la carga? ¿O tal vez estoy malinterpretando mi problema?
Es la respuesta más obvia ... Pero, como dije, algunos puntos de referencia complejos y juegos de computadora nunca bloquean mi PC. ¿Cómo es que nunca bloquean mi PC? – sneg
sneg: Debido a un hecho bastante fundamental sobre la ejecución de su computadora (o cualquier otra) más allá de las especificaciones para las que fue diseñada: Los resultados son * impredecibles *. Ninguna prueba única puede garantizar la estabilidad de su computadora. Desconecte y vea si eso soluciona el problema. Lo más probable es que lo haga. – jalf
Respuesta simple, ¿cuántos otros programas ejecuta que ejecutan la CPU y la mayor parte de la memoria de su computadora al 100% durante un período de tiempo prolongado? Las posibilidades son, ninguna. –