Hi, before letting this tool run as a background service on my 4 GPU rig I would very much like to lower the use of CPU resources, as this contribute a significant amount to power consumption and heat production.
Generally when you run a CUDA kernel that has a predictable run time, it is a good idea to put the CPU into sleep state for a time that is just a little shorter than the expected kernel run time. Now I do not know what other jobs the CPU has in the TMTO code base, but if it is mostly busy-waiting (polling) for the results of the CUDA kernel, inserting a sleep statement might be an excellent idea. You could for example perform a kernal execution time measurement for example on every 100th kernel call, and in the 99 iterations inbetween you could sleep the CPU for 90% of the previously measured time (just after launching the kernel). The CPU will wake up just in time to perform the busy wait for the kernel to actually finish. Performance impact should be nil. A CPU consumption of 5-10% per running TMTO instance would be very acceptable to me, the current 82% are not. Christian _______________________________________________ A51 mailing list [email protected] http://lists.lists.reflextor.com/cgi-bin/mailman/listinfo/a51
