ftoc - interface between prof and cord
ftoc file1...
The ftoc interface reads one or more feedback files produced
by the -feedback option of the profiler prof(1) and
writes onto stdout a reorder-file for use with the cacherearranging
program cord(1). It interprets each feedback
file as representing one phase of a program's execution.
In other words, if a program behaves in two distinct ways
depending on its input, you could create two different
feedback files by executing the program twice with different
input data, and both ftoc and cord will understand
that the information from the first file is distinct from
that of the second file.
As an example, to improve the instruction-cache performance
of a program called hello, you could generate a new
hello.cord program by saying:
cc -o hello hello.c pixie -o hello.pixie hello hello.pixie
prof -pixie -feedback hello.feedback hello ftoc
hello.feedback > hello.reorder cord -o hello.cord hello
hello.reorder
The reorderfile consists of a list of lines of the form:
sourcefile procname.procname... n
where "procname.procname..." represents an outer-to-inner
list of nested procedures, and n is 10 times the percentage
of the procedure's "density" with respect to the total
of the densities of all procedures. ("Density" is the
ratio of a procedure's total cycles to its total static
instructions.) A line consisting of "$phase" separates
information from different feedback files.
cord(1), pixie(1), prof(1)
ftoc(1)
[ Back ] |