[Mesa-dev] [PATCH] anv: bump the texture gather offset limits

Ilia Mirkin imirkin at alum.mit.edu
Sun Nov 27 22:53:47 UTC 2016


Ah OK. But presumably the gather4_po variant is chosen when the
constant offsets are outside the -8..7 range, since I didn't get any
failures, and the test suite has checks around impl-defined
min/maxes... Could be that all those were the non-const variants.
Looking through the brw_fs code, I indeed don't see anything for
promoting SHADER_OPCODE_TG4_LOGICAL into
SHADER_OPCODE_TG4_OFFSET_LOGICAL. But that code is subtle, so perhaps
it's handled somewhere I didn't notice.

  -ilia

On Sun, Nov 27, 2016 at 5:37 PM, Chris Forbes <chrisf at ijw.co.nz> wrote:
> The HW limits here are -8/7 when using the gather4 message. [gather4_po
> allows -32/31, and specified per channel]
>
> On Mon, Nov 28, 2016 at 10:49 AM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
>>
>> This matches what NVIDIA and AMD hardware expose.
>>
>> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
>> ---
>>
>> Not sure what the true HW limit is here. On NVIDIA, the true HW limit
>> really
>> is -32/31 though. As an aside, according to vulkan.gpuinfo.org, the Intel
>> Windows driver also exposes -32/31.
>>
>> With the updated limits on SKL, everything still passes:
>>
>> ./deqp-vk --deqp-visibility=hidden --deqp-case='*texture_gather*'
>> Test run totals:
>>   Passed:        762/1524 (50.0%)
>>   Failed:        0/1524 (0.0%)
>>   Not supported: 762/1524 (50.0%)
>>   Warnings:      0/1524 (0.0%)
>>
>>  src/intel/vulkan/anv_device.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
>> index 16aba59..d20dc0f 100644
>> --- a/src/intel/vulkan/anv_device.c
>> +++ b/src/intel/vulkan/anv_device.c
>> @@ -555,8 +555,8 @@ void anv_GetPhysicalDeviceProperties(
>>        .minStorageBufferOffsetAlignment          = 1,
>>        .minTexelOffset                           = -8,
>>        .maxTexelOffset                           = 7,
>> -      .minTexelGatherOffset                     = -8,
>> -      .maxTexelGatherOffset                     = 7,
>> +      .minTexelGatherOffset                     = -32,
>> +      .maxTexelGatherOffset                     = 31,
>>        .minInterpolationOffset                   = -0.5,
>>        .maxInterpolationOffset                   = 0.4375,
>>        .subPixelInterpolationOffsetBits          = 4,
>> --
>> 2.7.3
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
>


More information about the mesa-dev mailing list