Something like MSI afterburner would allow you to set fan profiles which would control the speed on the basis of thresholds. Some motherboards do not have pins capable of fan control in certain slots and so the fans just run 100% constantly. This is rarer however.
As for the GPU, I know 100% you can use afterburner or similar software to control its fan profile. You can also purchase (For the mobo based fans at least) a hardware fan controller that has physical means of speed control (touchscreen, switches, etc.)