Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Scenomics
Beginner
127 Views

OpenGL Driver Bug Reports

Where can I file driver bug reports for an Intel GPU?

0 Kudos
6 Replies
David_G_Intel
Moderator
116 Views

Hello Scenomics


Thank you for posting on the Intel®️ communities. 

 

Please share with us more information about this bug, the components on your system, and pictures/videos if applicable.

 

Regards, 

David G 

Intel Customer Support Technician 


Scenomics
Beginner
106 Views

Thank you David 🙂

------

Here's information about the device:

GL Vendor: Intel
GL Renderer: Intel(R) UHD Graphics 630
GL Version: 4.6.0 - Build 27.20.100.8681
GL Shading Language Version: 4.60 - Build 27.20.100.8681

------

1. In a compute shader, I have to use unusual explicit locations in order to get sampler binding to work for the first two slots.

1.1. By unusual, I mean using binding slots 2 and 3. It seems like something else is already using slots 0 and 1, but it's not the application.

1.2. This works without explicitly defined binding slots on all other test hardware.

2. I haven't tested other slots. I haven't noticed this problem in any other shader stage, and it seems to only affect sampler2D so far.

3. Using an explicit location does not seem to be required for image2D.

If I do not use explicit locations, the drive reports the following error message:

   Linker Output
   Validation Error: A sampler points to a texture unit used by fixed function with an incompatible target.

------

In a similar compute shader, using image2D, I do not have to use explicit locations, and I do not receive the error message in any situation when binding slots 0 and 1.

------

Here's the shader code that exhibits the error. This is a publicly available, non-proprietary sample:

#extension GL_ARB_compute_variable_group_size : enable
#ifdef GL_ARB_compute_variable_group_size
layout( local_size_variable ) in;
#else
layout( local_size_x = 32, local_size_y = 32, local_size_z = 1 ) in;
#endif

#include <SPA_Vendor.glsl>

#if INTEL
layout( binding = 2 ) uniform sampler2D lhs_texture;
layout( binding = 3 ) uniform sampler2D rhs_texture;
#else
uniform sampler2D lhs_texture;
uniform sampler2D rhs_texture;
#endif

layout( rgba32f ) uniform image2D dst_image;
uniform int lhs_image_width = int( 0 );
uniform int lhs_image_height = int( 0 );
uniform int rhs_image_width = int( 0 );
uniform int rhs_image_height = int( 0 );
uniform float blend_opacity = float( 0.5 );

vec4 addImages( vec4 base, vec4 blend )
{
   return min( base + blend, vec4( 1.0 ) );
}

vec4 addImages( vec4 base, vec4 blend, float opacity )
{
   return addImages( base, blend ) * opacity + base * ( 1.0 - opacity );
}

void main(void)
{
   ivec2 pos = ivec2( gl_GlobalInvocationID.xy ); // Gets the equivalent of the pixel coords on x/y.

#if INTEL
   ivec2 lhsDims = ivec2( lhs_image_width, lhs_image_height ); // Gets the lhs image dimensions.
   ivec2 rhsDims = ivec2( rhs_image_width, rhs_image_height ); // Gets the rhs image dimensions.
#else
   ivec2 lhsDims = textureSize( lhs_texture, 0 ); // Gets the lhs image dimensions.
   ivec2 rhsDims = textureSize( rhs_texture, 0 ); // Gets the rhs image dimensions.
#endif

   vec4 lhs = texture( lhs_texture, vec2( pos ) / lhsDims ); // Samples the texture using floating point coords.
   vec4 rhs = texture( rhs_texture, vec2( pos ) / rhsDims ); // Samples the texture using floating point coords.

   vec4 res = addImages( rhs, lhs, blend_opacity ); // Performs additive blending using a standard algorithm.

   imageStore( dst_image, pos, res ); // Writes the result to the image sampler.
}

 

David_G_Intel
Moderator
55 Views

Hello Scenomics

 

Thank you for the update, to investigate this request we need more information from the system. I will send you an e-mail to the e-mail address associated with your community profile requesting some reports that may contain sensitive information. 

 

Regards, 

David G 

Intel Customer Support Technician 


Scenomics
Beginner
52 Views

Thanks for the reply and assistance.

I've generated the report and saved it to disk, but I can't use the utility to submit it to Intel. Clicking the submit button takes me to a web page that doesn't load:

https://servicerequestmgmt.intel.com/webticketui/

Can I submit the report by email?

AlHill
Super User
47 Views

You only need to ATTACH the report to this thread.

Doc (not an Intel employee or contractor)

David_G_Intel
Moderator
19 Views

Hello Scenomics


Thank you for the reports provided via email, we will start an investigation on this request. As soon as we have an update, all the details will be posted on this thread.

 

Regards, 

David G 

Intel Customer Support Technician