Random Reboots When Gaming

I recently built a pc and everytime I play games I usually get a random reboot without a warning. My specs are:

CPU: AMD 8350

MOBO: ASRock 970 Extreme4

RAM: Crucial 8GB 1600

GPU: Nvidia GT 610

PSU: Corsair 500W 80+ bronze

I've been looking around and I keep seeing that it might be temperature, RAM, or PSU. I did a memtest and had no errors. My temperatures seem fine. These reboots happened when playing sleeping dogs, planetside 2, and emulators. I'm planning upgrading my GPU really soon to a 7870. Just wondering what other culprits it can be, hoping its because my GPU can't handle the games yet, but I really have no idea what else i should try.

Why on earth are you using such a week GPU for those games? The GTX 610 is worse than an APU! Yes, it most likely is due to the fact that using that GPU is like trying to cross the Atlantic Ocean on a dingy.

Prime 95, Furmark.

Run Prime with the Blend test for 12 - 24 hours. This test both memory (not nearly as thorough as memtest), and CPU for stability.

Run FurMark for 15 min, and keep an eye on those temps. Crank the fan to 100% if you have to.

Also, there are two versions of Memtest. There is Memtest and Memtest86. I've had issues with Memtest 86, but have used regular Memtest without issue. I'd use Memtest, and make sure it completes several passes. It's possible for memory errors to elude the first pass.

The last test is the PSU. My only suggestion is to run both Prime and Furmark simultaneously for several minutes. Again, watch the temps! Probably scan the disk (WinDirStat) too for good measure and crank all fans to 100%. Get as many components going as possible.

Alright, thanks for the suggestions, will try them out.

Also, you aren't overclocked at all are you?

No I'm not

So I upgraded my graphics to the 7870 and for 2 days I was able to run games with no problems, but now it starting to randomly occur again. Sometimes I can play planetside for an hour and some it reboots after a few minutes. I did all the tests and didn't get an error either.