Is it ok to call setShaderInput every frame?

I want to pass some data to my GLSL shaders that change every frame. Is it ok to set new values using setShaderInput every frame? For example:

def myTask(task):

    #compute a, b, c, d

    render.setShaderInput('values', Vec4(a, b, c, d))

    return task.cont

It seems like a tiny amount of data to send to the video card every frame so I figure it’s ok, but I just want to make sure this isn’t a stupid thing to do.

Yes that is perfectly fine to do every frame.

Great, thanks.