Apple’s GPU and power measurement.

Jimmyjames

Elite Member
Joined
Jul 13, 2022
Posts
1,482
This video has been shared fairly widely and I thought it might make for an interesting discussion. I’ll preface this thread by stating that much of this is over my head and I”m trying to understand it, so I may be incorrect in my statements.
Here is the video:


Here is a screenshot from the conclusion:
1773628951194.png


Essentially, the video posits the idea that Apple’s power measurement tools and apis are incomplete and based on a model rather than measurements. The author noticed a discrepancy between wall power measurement and software measurement. It amounted to a significant power difference. After some analysis, they say that Apple’s model doesn’t account for data movement when stating GPU power. It seems that data movement is increasingly expensive with modern GPUs.

My uneducated question is: does that make sense as a critique of the power measurement that Apple provides? That is to say, I wonder if part of the problem is that in a UMA like Apple Silicon, delineating what constitutes "gpu" power or "cpu" power is a judgement. Certainly the cost of moving data is important in terms of overall power consumption, but isn't it just as likely that Apple judges gpu power as only the alu/computation that takes place within the gpu itself? If so, while Apple should do a better job of accounting for residual power, is it clearly part of a GPU power measurement?

I would value input on this as I stated, much of this is currently beyond my knowledge.

Edit. It seems that the video has to be viewed on YouTube directly. The creator having disabled viewing elsewhere. Annoying.
 
This video has been shared fairly widely and I thought it might make for an interesting discussion. I’ll preface this thread by stating that much of this is over my head and I”m trying to understand it, so I may be incorrect in my statements.
Here is the video:


Here is a screenshot from the conclusion:
View attachment 38399

Essentially, the video posits the idea that Apple’s power measurement tools and apis are incomplete and based on a model rather than measurements. The author noticed a discrepancy between wall power measurement and software measurement. It amounted to a significant power difference. After some analysis, they say that Apple’s model doesn’t account for data movement when stating GPU power. It seems that data movement is increasingly expensive with modern GPUs.

My uneducated question is: does that make sense as a critique of the power measurement that Apple provides? That is to say, I wonder if part of the problem is that in a UMA like Apple Silicon, delineating what constitutes "gpu" power or "cpu" power is a judgement. Certainly the cost of moving data is important in terms of overall power consumption, but isn't it just as likely that Apple judges gpu power as only the alu/computation that takes place within the gpu itself? If so, while Apple should do a better job of accounting for residual power, is it clearly part of a GPU power measurement?

I would value input on this as I stated, much of this is currently beyond my knowledge.

Edit. It seems that the video has to be viewed on YouTube directly. The creator having disabled viewing elsewhere. Annoying.

In the end, any benchmark (power or performance) only tells you about that metric with respect to doing “a thing.” The “thing” is arbitrary, but is only of value if it coincides with the thing the consumer of the benchmark wants to do.

Since there is no consensus about what should be measured, the really important thing is that Apple be consistent across generations, etc., so that a user who has product X and is considering purchasing product Y can make a decision.

On the engineering side, everything is modeled. If I’m comparing one multiplier to another, I extract the values of all the parasitic capacitances, plug that into a formula with the frequency and voltage, and produce a worst-case number that i use for comparison. Perhaps I get fancy and, for blocks where wires may switch with different frequencies (i.e. some switch every cycle, some don’t, etc.) I take all that into account. I use this for all sorts of things, like comparing two possible designs, figuring out if there are transistors that I can shrink to reduce power and yet meet timing requirements, etc. I tend to do this at the block and sub block level. This generation’s floating point unit vs. last generations. The multiplier with the floating point unit. Etc.

What I don’t do is gin up some particular cross-block operation and figure out what the power of that particular operation looks like.

On the marketing side, it’s all arbitrary, and the only golden rule is consistency.
 
This video has been shared fairly widely and I thought it might make for an interesting discussion.
I'm not quite sure what to make of it. I watched part of it and kept having to skip forward through lots of meaningless segments where he says nothing at great length. When he did get down to things he thinks he's proved, it didn't taste like proof at all - seemed to be curve fitting (pick arbitrary parameters that make a curve look like you want it to) without adequate attention given to ruling out other potential hypotheses for why the measured curves look the way they do.

I'd really like to know if the creator used AI to generate some or all of the script. The whole thing has that hallmark over-verbosity and vague sense of plausibility which might collapse if you look at it too hard. But I haven't looked at it hard enough to figure out whether it really collapses. That's my take, for what it's worth.
 
Back
Top