0

A 3D game has to render polygons, their textures, detect collisions etc. and current GPU's eat an enormous amount of power. Which aspect(s) eat the majority of the power used on a GPU when a typical modern 3D game is being run? A second question: At the low-level, what are the most common instructions of the ISA being executed when a typical video game is being run?

Of course, you can always take aspects to the extremes and create an artificial program to increase any one aspect X and then say "X eats the most power". However, I'm referring to central tendency among current 3D games with reasonable quality settings.

8
  • 1
    Please use the help button on the top bar. We do electrical engineering here, not speculation... well, in most cases :)
    – Dzarda
    Apr 5 '15 at 16:46
  • 3
    Nothing to do with electronic design. Question should be closed.
    – Leon Heller
    Apr 5 '15 at 16:55
  • 2
    There's no way to give a general answer, you'll have to run a profiler on your hardware of choice. It may vary even between different models from the same manufacturer. Also, what would you do with this information?
    – pjc50
    Apr 5 '15 at 17:37
  • @Dzarda: There is no uncertainty in the answer and therefore no speculation. If you pick a set of benchmarks, fix the GPU, and profile them, you get a fixed answer (ignoring minor noise). Apr 5 '15 at 18:00
  • 1
    Okay, hold on. Different processors have different cycles per instruction, cycle times, instruction sets, leakage currents, thermal profiles, and optimizations. Now, where in all of that do you think anyone is going to be able to isolate a single instruction that is more intensive than all the others, common to all GPUd? And since the code is being pipelined, how could you pick just one? And how exactly would you have any of this without having a copy of the die of the processor in question? Modern programming is done in carefully engineered engines for this very reason.
    – Sean Boddy
    Apr 5 '15 at 19:01
3

There is no uncertainty in the answer and therefore no speculation. If you pick a set of benchmarks, fix the GPU, and profile them, you get a fixed answer

Well, yes. You could do that, if you had the right tools. It's not particularly easy to do power benchmarks without instrumenting the hardware yourself. You can run a simulation if you are NVIDIA or partner and have access to the processor Verilog. But the power consumption depends strongly on layout and implementation details - so it's very much subject to change.

You're talking of optimisation, but optimisation of what? If you're writing GPU code the optimal thing will nearly always be to minimise the total number of instructions executed rather than fiddling with the instruction mix; you have no real way to do that without changing functionality of the code anyway. If you're doing hardware design there are different answers, but you haven't said.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.