How dynamic are the variable radius ? Is it on a per pixel level or per game session (depending only on the visual settings ? ).
Here are some tips:
1. If you really have a dynamic setup, try to save different gaussian distributions in a texture and sample the texture.
2. If the setup change not very often, try to generate the shader coder just before uploading it. This way you avoid recalculation of the gaussian distribution and you have a fix range, which avoids dynamic for-loops (better performance on older hardware).
3. You can use pre-processor directive to choose between a fix set of precoded configurations.