Minecraft (and Java in general) uses a LOT of RAM and if you are using any mods(such as the shaders) there might be some memory leaks which lead to the GC firing more often as the allocated memory gets full. The GC(Garbage collector) requires a lot of processing power and stalls the memory for a bit as it is cleaning big chunks of data at once. If you are unsure about the memory press
F3 and check what the memory usage says.
Your problem could also be caused by other factors because the GTX 970 is a pretty powerful graphics card and that FPS count even with shaders enabled is not OK. Check that your graphics card drivers are up to date and if they are not update them. Also check what is your memory and CPU usage in the task manager.
And also please post what version of Minecraft are you playing on, any and all installed mods with versions and version of JRE(with
"java -version" ) you are using.
PS: Check the options if you are not limiting the FPS and using advanced OGL with VSync off