Originally Posted by LubosD
I've turned on "Prefetch caching" in my BIOS and it seems to stabilize the system a bit.
How stable? rock solid or only crashes once every 5 minutes...
Originally Posted by nagual.hsu
User-land application does some kind of 'poll' on hardware back and
forth within a loop. This kind of 'poll' would wait a definately
very small mount of time and then return, no matter the result is
acceptable or not. Then the user-land application check
the 'poll' result and finds that is unacceptable, so the user-land
application decide to continue loops with great confidence
of getting an acceptable result in the very short future.
But the acceptable result never comes.
When the user-land application 'poll/ioctl', it must have resched
happened. In one side I guess this user-land application(X) must
have 'sched_setscheduler' to some real time scheduling policy
(Round-robin or FIFO) in order to offer services to many
Xwindow APs. In the other side, when the user-land application
using ioctl() to poll the hardware, a resched happens and that's
why we can remotely ssh/telnet to the 'freezing' PC.
I agree with the first part... the second is more problematic.
If you check my glgears, you'll see that the GL indeed yields the CPU between polls. However, because I ran the software as user, it had no access to SCHED_FIFO or SCHED_RR (both require root priv'); however, it may not matter; even with SCHED_NORMAL, as long as you don't have one OpenGL application, you should be able to poll the device periodically without a problem.
Never the less, both our guesses are very close; it'll be nice if someone in nVidia is actually reading this...
BTW, did anyone try the debug flag (NVreg_ResmanDebugLevel=0
) I mentioned in my first post?
DEV-NG: Intel S2600C0, 2xE52658V2, 32GB, 4x2TB, GTX680, F19/x86_64, Dell U2711.
DEV: Intel S5520SC, 2xX5680, 36GB, 5x320GB, GTX550, F19/x86_64, Dell U2711 (^).
SRV: Tyan Tempest i5400XT, 2xE5335, 8GB, 4x2TB, 9800GTX, F19/x86-64, Dell U2412.
LAP: ASUS N56VJ, i7-3630QM, 16GB, 1TB, 635M, F19/x86_64.