2

I am working on McPAT. I wanted to know the formula they used in their power calculation of ALU and FPU.

In the logic.cc file, while initializing the ALU and FPU, they update a variable called per_access_energy. This variable is later used to compute power for other component.

My question is regarding the computation of the variable's value. Here is the their formula in FunctionalUnit::FunctionalUnit:

per_access_energy = 1.15/1e9/4/1.3/1.3*g_tp.peri_global.Vdd*g_tp.peri_global.Vdd*(g_ip->F_sz_nm/90.0);

They used a lot of fixed values. Where are this values are coming from?? What are these values? where do they get this formula?

Does anyone work with McPAT? and know about this? Please help.

osgx
  • 90,338
  • 53
  • 357
  • 513
Luniam
  • 463
  • 7
  • 21

1 Answers1

1

There is a comment "//FPU power from Sandia's processor sizing tech report" in https://github.com/uwsampa/mcpat/blob/master/logic.cc#L472 but I can't find exact paper.

In McPat paper - http://www.hpl.hp.com/research/mcpat/micro09.pdf they say "the ALU and FPU models are based on actual designs by Intel 29 and Sun [24, IEEE]". The [29] is for ALU, not for FPU; [24] is not free to access. The [33] paper from Sandia have no online sources, only title:

Rodrigues, A. F. "Parametric sizing for processors." Sandia National Laboratories,” Tech. Rep (2007).

per_access_energy is some estimations of energy in nJ, according to comment "//This is per cycle energy(nJ)". This is estimation of energy required to access operand from some type of memory (internal to CPU, like SRAM?). It is rough estimation with empirical coefficients, according to line (don't believe marketing)

per_access_energy *=0.5;//According to ARM data embedded processor has much lower per acc energy

I think, only author of code may or may not remember how he created this estimation.

Did you check the report http://www.hpl.hp.com/research/mcpat/McPATAlpha_TechRep.pdf ?

Since McPAT models dynamic energy per access per port for most components

osgx
  • 90,338
  • 53
  • 357
  • 513