Hi Peted,
The glUniform4fv thing I think is a red herring / confusion with glUniform4f
My bad. I misinterpreted the man pages.
Ahhh, ok. I can't see any reason why the glTexStorage2DEXT() extension would introduce a CPU overhead, as it's purpose is to remove draw-time checks. You should discuss the issue with Apple though to see if there are any quirks to their implementation of this extension.
Unfortunately, I don't think there is any more I can do to help you investigate this issue without a minimal reproduction test for Linux, Android or Windows.
Thanks,
Joe