glslTOP: many inputs vs writing to same texture in memory

Is it true that you cannot write to the same texture in GPU memory from multiple glsl TOPs?

I have a large number of input textures I want to sample from to make one output texture, but:

a) don’t want to hit the possible limited number of glsl TOP inputs on Mac/Intel GPUs,

b) don’t want to fill up memory with an output texture per input texture, when I only want one output texture total

possible solution I’m thinking of right now is just clusters of {16 inputs → 1 glsl TOP}, then composite each cluster’s output, which would at least take a chunk out of the needed memory.

If you are needing to split up an operation due to hardware limits, resulting in multiple passes, then the intermediate results need to be stored somewhere (a texture). You can then pass that texture into the input of another GLSL TOP to further accumulate more inputs.
With compute shaders, you could re-read the destination each pass to further accumulate it, but we don’t currently have a way to send the first N inputs to a compute pass, followed by the next M inputs. That’s a missing feature.
So for now using multiple GLSL TOPs is the right way to go.

Ah, interesting about passing output of one GLSL TOP to the input of another. I had been thinking about everything I’m talking about here happening in-parallel within one frame, but didn’t consider multiple shaders firing sequentially in a chain (still sub-frame) in order to accumulate pixels.