TL;DR: It won't in most cases.
I am going to explain this from my understanding. Pro-Shiny-Users please correct me if I am wrong.
I will explain what this means, or you can read the tutorial to get the official version.
In this specific instance I believe there would be some outputs (or an observe()) that depend on GSD(). For simplicity suppose there is only one output$something that depends on GSD.
In Shiny A will invalidate B if A was called in the previous run of the code B (you need not understand this in this particular instance but it may help you debug more complex cases later on)
So when your input$timingType changes, it invalidates both k() and timing(), both of these in turn invalidate GSD(). Finally GSD() will invalidate output$something..
One thing to highlight is that invalidation does not cause recalculation, so at this stage no re-calculation has occurred.
Now suppose all things that can be invalidated by the changes to input$timingType has occurred, now a flush event occurs. Once this occurs output$something will re-calculate as it is an endpoint. Since it depends on GSD so somewhere in its code it will call GSD() and this is when GSD() will recalcualte. Now GSD() depends on t() and timing() so inside GSD() both t() and timing() gets called. Now once t() and timing() were both called and their values updated, GDS() will use their values to update itself and now output$something can finish its computation based on GDS().
To summarise when output$something runs, it calls on GSS() which calls on k() and timing(). So each of k(), timing() and GSD() was run only once.