I am trying to make a way to load multiple textures into a single OpenGL texture so that I can have a single sprite sheet, allowing me to use gpu instancing to draw many sprites at once. The problem is, in my texture loading code, calling glCopyImageSubData works fine - but calling glGetError after causes my GPU memory to jump up almost 4gb. It doesn't appear to ever go back down either. It normally sits at less than 1gb, so I am confused as to why doing this is causing over 4gb of memory usage.
In terms of hardware, I am on a laptop with an NVIDIA GeForce RTX 3060 Laptop GPU, as well as the AMD Radeon Graphics from my CPU.
This only appears to happen when the NVIDIA GPU is being used, using the on board AMD graphics appears to not have this problem, so maybe an NVIDIA issue?