I already do cap my framerate, how can you tell that my gpu is struggling?
I'll just use x264 instead, it seems to work perfectly.
Very sorry, it was 3am for me when I replied... Usually give more info...
12:46:54.632: Output 'simple_file_output': Total encoded frames: 4719
12:46:54.632: Output 'simple_file_output': Total drawn frames: 4720
12:46:54.632: Output 'simple_file_output': Number of lagged frames due to rendering lag/stalls: 8 (0.2%)
If it was to state a similar line saying skipped frames due to encoding lag, that would be your CPU load affecting your recording/stream attempts. Rendering is your GPU being overloaded.
In regards to encoding/rendering overload causing frame lag, it is fine to have some, just means you are really pushing your system... Better to have none though, if you do have some you want it to be as few as possible with a 0.0% ratio to drawn frames, for example below from my logfile:
21:00:36.186: Output 'adv_file_output': Total encoded frames: 107903
21:00:36.186: Output 'adv_file_output': Total drawn frames: 107910
21:00:36.186: Output 'adv_file_output': Number of skipped frames due to encoding lag: 5 (0.0%)
Using x264 encoder at your resolution with your CPU & GPU setup would probably be the best method as you should be able to push quite a high bitrate, ~50-60k with near lossless quality settings. x264 encoder runs off the CPU itself so it is inherently resource hungry yet the quality it yields is far superior to hardware encoders like NVENC/AMD AMF/QSync.