[comp.lang.c] C Profiler Wanted

susan@cci632.UUCP (Susan Micciche) (05/20/88)

I am looking for profiler to run on a SVR2 platform. We currently are
using "gprof" on our systems as well as "prof". We would like something
that will profile at a lower level, like monitor(3C), but automatically
with a compiler option. Does such an animal exist?

Susan

...rochester!cci632!susan

gwyn@brl-smoke.ARPA (Doug Gwyn ) (05/20/88)

In article <10347@cci632.UUCP> susan@cci632.UUCP (Susan Micciche) writes:
>I am looking for profiler to run on a SVR2 platform. We currently are
>using "gprof" on our systems as well as "prof". We would like something
>that will profile at a lower level, like monitor(3C), but automatically
>with a compiler option. Does such an animal exist?

I'm confused by this.  I could have sworn that the standard cc -p
profiling uses monitor() to build an instruction-count profile as
well as a function entry count (with the instruction PC "bin size"
set to some default, which presumably could be adjusted simply
enough by keeping in in an extern, e.g. __pc_bin_size, for use by
the mcrt0.o startup code.

I know that even on 6th Edition UNIX I was able to (via "prof -v")
produce nice graphic histograms showing instruction usage density
and cumulative use along the PC address axis.  Don't tell me this
feature got lost as a result of the Berkeley "improvements"!

rick@seismo.CSS.GOV (Rick Adams) (05/21/88)

> >I am looking for profiler to run on a SVR2 platform. We currently are
	...				 ^^^^

> and cumulative use along the PC address axis.  Don't tell me this
> feature got lost as a result of the Berkeley "improvements"!
				       ^^^^^^
Gratuitious Berkeley bashing?

gwyn@brl-smoke.ARPA (Doug Gwyn ) (05/21/88)

In article <44316@beno.seismo.CSS.GOV> rick@seismo.CSS.GOV (Rick Adams) writes:
>> >I am looking for profiler to run on a SVR2 platform. We currently are
>> and cumulative use along the PC address axis.  Don't tell me this
>> feature got lost as a result of the Berkeley "improvements"!
>Gratuitious Berkeley bashing?

No.  If you had read the part that you failed to quote, you would
have seen a reference to having "gprof".  Obviously that so-called
"SVR2 platform" was not using the AT&T COFF-based SGS but rather
some form of the Berkeley C environment.

Actually, the 4.3BSD manual shows that "prof" does still support the
-v option for producing PLOT(5)-style graphics output (which I was
glad to discover), although "gprof" doesn't appear to have such a
feature.  Therefore the original requestor probably ought to be able
to get graphic instruction-space usage histograms anyway.  I now
wonder whether I understood the original request.  (It sure SOUNDED
like that's what was wanted!)

dlm@cuuxb.ATT.COM (Dennis L. Mumaugh) (05/25/88)

In article <10347@cci632.UUCP> susan@cci632.UUCP (Susan Micciche) writes:
>
>I am looking for profiler to run on a SVR2 platform. We currently are
>using "gprof" on our systems as well as "prof". We would like something
>that will profile at a lower level, like monitor(3C), but automatically
>with a compiler option. Does such an animal exist?
>

You failed to specify the SVR2 platform.  There is such  a  beast
for  SystemV  Release  2 (and later) for the ATT 3B product line.
It is called lprof for line profiler.  It produces  an  annotated
listing of the C source with a count, line by line, of the number
of times each statement was executed.

It uses a special routine to insert code into the executable  and
is invoked as a compile time option (-qc) to the C compiler.  The
lprof is part of the C Programmers Productivity Tools offered  by
ATT.  See your account rep.

For SVR2 people who don't  have  an  ATT  platform  consult  your
vendor they might have the product or plan to offer it.
-- 
=Dennis L. Mumaugh
 Lisle, IL       ...!{ihnp4,cbosgd,lll-crg}!cuuxb!dlm