[Piglit] Default window sizes and NPOT

Ilia Mirkin imirkin at alum.mit.edu
Fri Aug 15 15:28:51 PDT 2014


On Fri, Aug 15, 2014 at 11:19 AM, Brian Paul <brianp at vmware.com> wrote:
> On 08/15/2014 08:52 AM, Ilia Mirkin wrote:
>>
>> Brian,
>>
>> You recently went on a campaign against setting .window_width/height
>> in piglit tests, in order to fix issues on Windows I guess? I noticed
>> that a bunch of failures on a NV17 card (GeForce4 MX 440) are due to
>> the fact that the window sizes are now 160x160 (NPOT) and the tests
>> use that in order to size their textures.
>>
>> What is the proper way to resolve this? Temporarily I've changed the
>> default window width/height to 128, but that's not going to work more
>> generally for the same reason you increased it to 160x160. Should I
>> just do so on tests I identify as runnable on nouveau_vieux and that
>> also have this issue? Perhaps increase to 256x256? Something else?
>>
>> You can find such tests with
>>
>> git grep -C2 piglit_width tests/fbo | grep glTexImage
>>
>> Not all of them run on nouveau_vieux, but some do.
>>
>> Thanks for any advice,
>
>
> If a test like fbo-alphatest-formats.c creates a texture equal in size to
> the window and the window size is not explicit and the test doesn't check if
> NPOT textures are supported, I'd say the test is broken.  I didn't see any
> regressions when I removed the original window size because llvmpipe and
> more recent nvidia hardware support NPOT textures.
>
> For these tests, the simplest thing is probably just setting the window size
> to 256x256.  Otherwise, we should probably create the texture with an
> explicit POT size and check that the window is at least that size before
> probing.  See sample patch attached.

I think the path of least resistance may be to just increase the
window size to 256x256 for those tests. I've set it to a POT size
globally for now, will compare results and send a patch updating the
tests that end up being executable with nouveau_vieux. (Although I
guess even GeForce FX 5000 series doesn't have NPOT support, at least
not with the nv30 driver.)


More information about the Piglit mailing list