I have encountered a weird problem: I have a fragment shader containing several uniform variables (mat4, vec4), a single sampler2D and a gigantic SSBO (1GB-2GB). For each type of variables, it does not exceed the size limitation of the hardware. Without the SSBO, the shader works fine. With the SSBO, if the resolution of the texture image is low (768x768x4 float), the shader works fine too. However, if the resolution goes to 1024+ x 1024+, the program instantly crashes inside NVIDIA driver. I have tested it on GTX980 Ti and Quadro P5000. This problem all happened.
I wonder if there are any limitations on the usage of shader resources.