Figure 3 fprof Measurement Report for matmul, with IP Sample Counts for One Function

Function Details

 

 

 

---------------------------------------------------

 

% Total

 

Line

 

 

IP

IP

Slot

>Statement

 

Samples

Samples

Col,Offset

Instruction

 

---------------------------------------------------

 

96.88

[matmul::main, 0x40009a0, matmul.c]

 

1

 

1275

~38

Function Totals

 

 

2

 

------------------------------------------

 

3[/home/meagher/matmul.c]

4

(32)

 

~16 *>

 

mata[i][j] = matb[i][j] = (float) rand() ;

 

 

 

~9,0x0280:0

M

nop.m

0

 

 

 

 

 

:1

M

nop.m

0

 

 

 

 

 

:2

F_(p6)

fcvt.xf

f6=f6 ;;

5

2

~9,0x0290:0

M

nop.m

 

0

 

 

 

 

 

:1

M

nop.m

0

 

 

 

 

 

:2

F_

fma.s

f6=f6,f1,f0 ;;

 

 

 

~9,0x02a0:0

M

stfs

[r47]=f6,4

 

 

 

 

:1

M

stfs

[r48]=f6,4

 

 

 

 

:2

B_

br.call.sptk.many

rp=b7 ;;

 

~ ~ ~ ~ ~ ~ ~ ~

 

 

 

 

 

 

 

6

 

 

 

 

 

 

 

 

 

 

~9,0x02e0:0

M

nop.m

0

 

 

 

 

 

:1

M

nop.m

0

 

 

 

 

 

:2

F_(p6)

fcvt.xf

f6=f6 ;;

 

 

4

~9,0x02f0:0

M

nop.m

0

 

 

 

 

 

:1

M

nop.m

0

 

 

 

 

 

:2

F_

fma.s

f6=f6,f1,f0 ;;

 

 

 

~9,0x0300:0

M

stfs

[r47]=f6,4

 

 

 

 

:1

M

stfs

[r48]=f6,4

 

 

 

 

:2

B_

br.call.sptk.many

rp=b7 ;;

.

 

 

 

 

 

 

 

 

.

.

.

---------------------------------------------------

3.04[libc.so.1::rand, 0x4119f60, rand.c]

40~57 Function Totals

------------------------------------------

1 Identifies the function (main) for which disassembly is shown. Specifies the function's load module (matmul), starting address (0x40009a0), and source file (matmul.c.

2Shows total IP sample hits (1275) and starting line number (38) for the function. A tilde (~) preceding a line number (~38) indicates that the line number is approximate due to optimization.

3Names the source file of function main.

4Shows sample IP hits (41) for statement at line 16 (~ indicates the line number is approximate due to optimization) of matmul.c. Sample IP hits for statements are shown in parentheses; sample IP hits for instructions are not.

Source lines are preceded by >. If a source line is out of order or is associated with multiple, noncontiguous instructions, the source line is also preceded by an asterisk (*>).

5Shows sample IP hits (4) for the instruction bundle starting at function offset 0x0290, where the associated source column is ~9 (~ indicates the source column is approximate due to optimization). Instructions are preceded by template information: in this case, M for slot 0 and slot 1, and F_ for slot 2.

6Shows a discontinuity marker, which indicates that some instruction bundles without associated

data have been left out of the report. (To report all disassembly, use the --context-linesoption.)

Example: Adding Instructions to an fprof Report 25