[m-users.] Grade for profiling
Volker Wysk
post at volker-wysk.de
Tue Mar 21 16:27:00 AEDT 2023
Am Dienstag, dem 21.03.2023 um 10:16 +1100 schrieb Julien Fischer:
> Hi Volker,
>
> On Mon, 20 Mar 2023, Volker Wysk wrote:
>
> > Am Montag, dem 20.03.2023 um 13:17 +0100 schrieb Volker Wysk:
> > > Am Montag, dem 20.03.2023 um 21:29 +1100 schrieb Julien Fischer:
> > > >
> > > > On Mon, 20 Mar 2023, Volker Wysk wrote:
> > > >
> > > > > Hi, Julien
> > > > >
> > > > > Am Montag, dem 20.03.2023 um 09:40 +1100 schrieb Julien Fischer:
> > > > > > Hi Volker,
> > > > > >
> > > > > > On Sun, 19 Mar 2023, Volker Wysk wrote:
> > > > > >
> > > > > > > I want to profile my program, but when using mprof, I get only lines like
> > > > > > > this:
> > > > > > >
> > > > > > > 0.0 0.00 0.00 49576032 0.00 0.00
> > > > > > > unknown__140325205178080 [140]
> > > > > > >
> > > > > > > All names begin with "unknown_...".
> > > > > > >
> > > > > > > My guess is, that debug symbols must be compiled in. My profiling grade is
> > > > > > > "asm_fast.gc.prof", so no debug symbols.
> > > > > >
> > > > > > The .prof component should be all that is required for (time) profiling
> > > > > > to work; there's no need for anything additional
> > > > >
> > > > > So why are all the names "unknown__..."? It isn't usable this way...
> > > >
> > > > If they are all "unknown__...", then something is wrong. The profiler
> > > > builds a table of addresses to procedure names; if it can't find an
> > > > entry for a given address in that table it outputs it as "unknown__...".
> > > > When you run a program with profiling enabled, that table should be
> > > > written to the file Prof.Decl. When you run your program, does the file
> > > > Prof.Decl contain any entries?
> > >
> > > Yes, it does. It's a megabyte big.
> >
> > This is how I build my program:
> >
> > mmc -j8 -E --make \
> > --grade asm_fast.gc.debug.stseg \
> > --output-compile-error-lines=200 \
> > --cflags "$(pkg-config --cflags glib-2.0)" \
> > --cflags "$(pkg-config --cflags mhash)" \
> > --ml colipa \
> > -lodbc -lpthread -ldl \
> > --cflag "-DMODBC_UNIX" --cflag "-DMODBC_MYSQL" \
> > `pkg-config --libs glib-2.0` \
> > `pkg-config --libs mhash` \
> > "$PROG"
>
> The above doesn't specify a profiling grade, so it's presumably not
> quite how you built it.
You're right. When I build with profiling, the grade line is:
--grade asm_fast.gc.prof --profiling \
> If you want to zip up and the profiling files
> (Prof.Decl, Prof.Counts and Prof.CallPair) and email them to me
> directly, I can take a further look.
On the way - thanks!
Volker
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <http://lists.mercurylang.org/archives/users/attachments/20230321/25ed3214/attachment.sig>
More information about the users
mailing list