RE: Profiling question

2005-09-13 Thread Simon Marlow
On 12 September 2005 22:59, J. Garrett Morris wrote:

> (apologies for the previous attempt at this message)
> 
> I'm attempting to profile a project spread over four or five modules,
> each compiled using cabal with the --enable-library-profiling and
> --enable-executable-profiling switches.  The resulting profiles
> include all function calls for several of the modules, but one of the
> others is mysteriously never mentioned, despite definitely having been
> called.  Is there some reason module (compiled with profiling) would
> be excluded from the final report?

Not that I can think of, unless for some reason that module didn't get
compiled with -auto-all?

Cheers,
Simon
___
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


RE: profiling question

2003-03-27 Thread Simon Marlow
> I think this question was asked by someone else as part of another
> thread back in January, but I couldn't find an answer on the list
> archive. What do the zeros for "entries" mean in a time profiling
> report? If I want to know why "getAppropriatePreds" takes up so much
> time (14.7%) in my code, does the zero mean an overflowed 
> count or that
> the cost centre has never been entered? I'm using 5.04.2 on Linux, and
> my program is compiled with -O -prof -auto-all.
> 
>   compose InfrequentCheck   113712280580   2.12.5 
> 2.12.5
> alignInfrequentCheck   1127   0   3.7
> 6.2 8.3 
> 6.7
>   align2  InfrequentCheck   1139 8577943   0.40.0 
> 0.40.0
>   lookupModeArgs  InfrequentCheck   113686747940   4.20.4 
> 4.20.4
>   getAppropriatePreds InfrequentCheck  11260  14.76.6 
> 14.76.6

I think the best answer to give here is that the entries count is not at
all reliable.  Please feel free to file a bug, we'll get around to it
next time I have the profiling system paged in ;-)

Cheers,
SImon
___
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users


Re: Profiling question

2003-01-06 Thread John Meacham
Ah, I'd definatly like to request it for GHC. as well as a version in
the IO monad, I have wanted both on various occasions.
John

On Mon, Jan 06, 2003 at 12:55:35PM +, Malcolm Wallace wrote:
> Kirsten Chevalier <[EMAIL PROTECTED]> writes:
> 
> > I'd like to be able to determine the percentage of allocated objects of
> > a particular type at specific points in a program's execution. I know
> > that I can use heap profiling to create a graph of memory usage broken
> > down by type, but is there any way to record this information at
> > particular points in the program (i.e., between two statements in a
> > do-expression)?
> 
> If you were using nhc98, then you could use the following:
> 
> import NonStdProfile
> 
> f ... = do ...
>profile "point A" actionA
>profile "point B" actionB
> 
> The non-standard operation
> profile :: String -> a -> a
> places a labelled marker line on the profile graph at the time instant
> when the value is demanded.
> 
> I don't know whether ghc has anything similar?
> 
> Regards,
> Malcolm
> ___
> Glasgow-haskell-users mailing list
> [EMAIL PROTECTED]
> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
> 

-- 
---
John Meacham - California Institute of Technology, Alum. - [EMAIL PROTECTED]
---
___
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users



RE: Profiling question

2003-01-06 Thread Simon Marlow
> If you were using nhc98, then you could use the following:
> 
> import NonStdProfile
> 
> f ... = do ...
>profile "point A" actionA
>profile "point B" actionB
> 
> The non-standard operation
> profile :: String -> a -> a
> places a labelled marker line on the profile graph at the time instant
> when the value is demanded.
> 
> I don't know whether ghc has anything similar?

No, but that strikes me as rather a good idea.  I'll have a go at
implementing it.

Cheers,
Simon
___
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users



Re: Profiling question

2003-01-06 Thread Malcolm Wallace
Kirsten Chevalier <[EMAIL PROTECTED]> writes:

> I'd like to be able to determine the percentage of allocated objects of
> a particular type at specific points in a program's execution. I know
> that I can use heap profiling to create a graph of memory usage broken
> down by type, but is there any way to record this information at
> particular points in the program (i.e., between two statements in a
> do-expression)?

If you were using nhc98, then you could use the following:

import NonStdProfile

f ... = do ...
   profile "point A" actionA
   profile "point B" actionB

The non-standard operation
profile :: String -> a -> a
places a labelled marker line on the profile graph at the time instant
when the value is demanded.

I don't know whether ghc has anything similar?

Regards,
Malcolm
___
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users



RE: Profiling question

2003-01-06 Thread Simon Peyton-Jones
Not currently.  It's not clear what a "point" in execution *is*!
The top-level IO monad thread might provide such a point, but even then
it might not be clear how much of a lazy data structure had been
evaluated by that "point".

I could see sense in having an I/O operation
markProfile :: String -> IO ()
which would put a labelled vertical line on the profile to say when that
"point" was.

Simon

| -Original Message-
| From: Kirsten Chevalier [mailto:[EMAIL PROTECTED]]
| Sent: 03 January 2003 19:30
| To: [EMAIL PROTECTED]
| Subject: Profiling question
| 
| Hi,
| I'd like to be able to determine the percentage of allocated objects
of a
| particular type at specific points in a program's execution. I know
that I
| can use heap profiling to create a graph of memory usage broken down
by type,
| but is there any way to record this information at particular points
in the
| program (i.e., between two statements in a do-expression)?
| 
| Thanks,
| Kirsten
| 
| --
| Kirsten Chevalier * [EMAIL PROTECTED] * Often in error, never in
doubt
| ___
| Glasgow-haskell-users mailing list
| [EMAIL PROTECTED]
| http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
___
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users