TargetFrameRate = 8. Drawcalls approx 30. Phone still overheating!

I created a gui-based app using Unity 5.3.4. In Update(), I only have a few simple if statements to check for keypresses. I force the TargetFrameRate = 8 while awaiting input. During input & animations, I set TargetFrameRate = -1.

As a test, I left my Galaxy S6 idling at 8fps on a page that has 30 draw calls.

The results after 15 minutes :

  • Phone is hot as hell
  • Battery down 7% !!! (remember, 30 draw calls @ 8fps)

The profiler shows that 98% of my CPU is spent spent in WaitForTargetFPS (PC) or in Device.Present (Android).

Why the heck is my phone overheating with such a small load and TargetFrameRate set to 8 ???

PS - I’m using fastest settings, with everything turned off. No lights, no shadows, half res textures. V-Sync off.

Thanks!

If you read my post carefully, you will notice that my test was done during idle. When I actually use the app, it starts throttling and battery goes down at a rate of 1% per minute or worse, even on my battery saver option which sets the TargetFrameRate at 30fps.