The cpu sets fps limits. It pre-renders all the game code into frames that it sends to the gpu. It'll pre-render as many frames as the game code will allow in a second. The job of the gpu is to finish render the frames from the cpu according to detail settings and resolution.
So a cpu would be considered a limiting factor if for instance the gpu was capable of 100fps, but only receives 60. The gpu would be the limiting factor if the cpu sent it 100fps, but the gpu could only put 60 on screen.
You can test this by changing detail levels. Play a game on low settings, notate the fps. Then replay the game on medium and ultra, notating the fps. If the fps doesn't really change much then the cpu is the limiting factor as the gpu can handle...