I have a GLSL top which does nothing:
void main()
{
}
it takes longer (around .03 .04 ms) than a default blur TOP ( around .02 .03)
there seems to be an overhead in the GLSL top that is not present in other TOPs. why?
I have a GLSL top which does nothing:
void main()
{
}
it takes longer (around .03 .04 ms) than a default blur TOP ( around .02 .03)
there seems to be an overhead in the GLSL top that is not present in other TOPs. why?
For any TOP the cook time is generally just the CPU time required to setup the operation (excpet for ones that upload/download to the GPU). The actual GPU time spent doing the operation is hidden as it’s done asynchronously on the GPU, at a later time.
So the GLSL TOP has a higher cook time because it has so many more parameters to evaluate.
I get it, thanks for the explanation!
d
@Malcolm
Your reply was 10 years ago. Is this still same?
If I have a chain of 3~4 shaders, then is it better to have a single glsl TOP and code all the shaders into it, than to have multiple glsl TOPs?
In general yes this is still the case. You can now see how long a GPU operation takes when you middle click on a node though. So you can compare the times for multiple TOPs vs one. However there is both overhead in fetching texture data, as well as CPU overhead in launching the operation, that are reduced when you only have one TOP.
That’s not to say though that you should go out of your way to only use one TOP. If you don’t need the extra pixel shader performance, then there is no need to make your file more complex and harder to maintain.