using "strace -T -p<mythfrontend.real PID>"<br><br>I'm seeling the poll system call take the longest:<br><br>poll([{fd=4, events=POLLIN}, {fd=9, events=POLLIN}, {fd=8, events=POLLIN}, {fd=12, events=POLLIN}, {fd=29, events=POLLIN}], 5, 13) = 0 (Timeout) <0.013084><br>
<br>using "strace -c -p<mythfrontend.real PID>" for a few seconds.<br>I see that the poll system call is eating most of the time. And as you can see, the clock_gettime is very insignificant compared to the time spent in the poll routine.<br>
<br>% time seconds usecs/call calls errors syscall<br>------ ----------- ----------- --------- --------- ----------------<br> 98.52 0.080000 14 5564 poll<br> 0.77 0.000622 0 11136 clock_gettime<br>
0.72 0.000582 0 11132 11131 read<br> 0.00 0.000000 0 1 restart_syscall<br><br>I also see when top is running that when I run strace -c, the strace utilization + mythfrontend utilization ~= 14%. That tells me that the implementation of the polling routine has a "busy wait" timeout in it. Something that consumes the cpu while it waits, but does not take any longer to wait if the context is switched out to another thread in the meantime. If we really need to poll at that rate, is there a way to reduce the timeout for the poll system call? <br>
<br>Personally, I would think you might want large timeout for low rate polling, but polling at 70Hz or something, I would think you wouldn't even need a timeout.<br><br>So, is this poll routine the one in question that would be in the Qt domain, not the myth domain?<br>
<br>