Diagnosing first vs subsequent performance
lloyd_brown at byu.edu
Wed Jan 20 12:03:35 PST 2016
Something else very odd, as well:
I was just running glxgears (good performance) on one display, and then
when I ran glxinfo on a second display, the glxgears performance dropped
significantly, and glxgears disappeared from the output of nvidia-smi.
Here's some example output from the glxgears; you can see about the time
that I ran glxinfo in a separate shell, on a separate display:
> [lbrown at m8g-1-8 ~]$ DISPLAY=:0.0 glxgears
> Running synchronized to the vertical refresh. The framerate should be
> approximately the same as the monitor refresh rate.
> 62559 frames in 5.0 seconds = 12511.681 FPS
> 65114 frames in 5.0 seconds = 13022.790 FPS
> 64244 frames in 5.0 seconds = 12848.709 FPS
> 65823 frames in 5.0 seconds = 13164.540 FPS
> 65377 frames in 5.0 seconds = 13075.360 FPS
> 65603 frames in 5.0 seconds = 13120.422 FPS
> 65077 frames in 5.0 seconds = 13015.360 FPS
> 62704 frames in 5.0 seconds = 12540.680 FPS
> 34837 frames in 5.0 seconds = 6966.968 FPS
> 10710 frames in 5.0 seconds = 2141.983 FPS
> 10645 frames in 5.0 seconds = 2128.814 FPS
> 10583 frames in 5.0 seconds = 2116.421 FPS
> 10275 frames in 5.0 seconds = 2054.867 FPS
> 10666 frames in 5.0 seconds = 2133.052 FPS
> 10665 frames in 5.0 seconds = 2132.835 FPS
Now, the "slow-running" glxgears instance is closer to 350 or 375 FPS,
so this is still better. But it really appears that Xorg has some kind
of resource shared between the instances. I don't see how else one Xorg
display could have this kind of effect on another.
On 01/20/2016 12:49 PM, Lloyd Brown wrote:
> It's true. A glxinfo first, is enough to get things working, so that's
> a workaround. Not ideal, but something.
> As far as dmesg, the only new output after a slow-instance of glxgears,
> is a line like this:
>> vgaarb: this pci device is not a vga device
> But since the tesla is not a VGA device, that seems reasonable. Also, a
> new one shows up when the fast-instance glxgears is killed, as well. So
> it doesn't seem like it's related.
> The only instance of "NVRM" in the output of dmesg, is this:
>> NVRM: loading NVIDIA UNIX x86_64 Kernel Module 352.55 Thu Oct 8
>> 15:18:00 PDT 2015
> On 01/20/2016 12:14 PM, Thomas Lübking wrote:
>> Check dmesg, notably for NVRM, right after the failed gl call.
>> I assume any initial gl call will do, ie. running glxinfo will lead to
>> a first instance glxgears on the GPU?
>> xorg at lists.x.org: X.Org support
>> Archives: http://lists.freedesktop.org/archives/xorg
>> Info: http://lists.x.org/mailman/listinfo/xorg
>> Your subscription address: %(user_address)s
Fulton Supercomputing Lab
Brigham Young University
More information about the xorg