- only stick non-rt and non-kernel tasks
- make stick preemt task preemtable
with these two new commits, no frame drop can be seen for h264 playback while 300% IDLE workload running at the background. But for 300% nice 19 NORMAL workload, there are still 4 frame drop in about 5mins test comparing to zero frame drop in pure VRQ branch kernel. So yes, there still some thing can be done to improve the interacting for NORMAL policy tasks. Consider that 4.6 has been come out and I'm going to work on 4.6 sync-up, the improvement for test branch will be continued in 4.6 test branch. Before testing the 4.6 VRQ, you can have a try for this new test patch for 4.5, and I'd like to hear your feedback.
PS, I have forced updated the git branch, so please re-fetch them from git.
BR Alfred
@Alfred:
ReplyDeleteI'm seem to not be allowed to post my comment with two call traces (as Anonymous).
Any ideas?
BR Manuel Krause
Don't want to exceed patience, mine and yours. Will send the posting to your email address.
DeleteBR Manuel Krause
To make it short and understandable for other readers as I've emailed with Alfred in the meantime:
DeleteThe failures/errors with the new -VRQtest version were caused by my own mistakes. I've had trashed the corresponding sources' folder with wrong patching sometimes before. A wonder that that mess compiled without issues.
Now, after recreating sources and freshly patched, also this version works!
My first experience with it: Much better than the previous -VRQtest0 (without the 2 new commits) regarding interactivity and frame drops, but I still see latency with mouse movement in KDE when having my WCG client tasks running in the background.
BR Manuel Krause
Others are invited to test and see themselves. :-)
Thanks for the updates. Good to hear that it works for you.
DeleteLet's see how it could be in 4.6 test branch.
BR Alfred
And, what's the policy again for your WCG client tasks now? NORMAL or IDLE?
DeleteSince you advided me some time ago I invoke the BOINC client as follows:
Delete/sbin/startproc -u boinc -g boinc -l /var/log/boinc-client.log -s /usr/sbin/schedtool -n 19 -D -e /usr/bin/boinc-client --dir /var/lib/boinc --no_priority_change
The advantage is, that the 2 child processes always get spawned as SCHED_IDLEPRIO and nice 19, differently from BOINC's default of SCHED_BATCH. It's what you've suggested for testing, some time ago.
BR Manuel Krause