Re: MultiDatabase shard count limitations
Olly Betts <[email protected]> Mon, 24 Aug 2020 08:40:00 +0100
| Newsgroups | gmane.comp.search.xapian.general |
|---|---|
| Message-ID | <[email protected]> |
On Mon, Aug 24, 2020 at 05:58:02AM +0000, Eric Wong wrote: > Olly Betts <[email protected]> wrote: > > Can prof report time for a function including things it calls? > > callgraph? Attached is a profile the output of "perf report -g" > with callgraph info. I'm no perf expert, either, but slowly > learning more as I go along... The list seems to have stripped the attachment, but I was able to dig it out from the message it sent saying it was held for approval for having a large attachment. That's kind of what I was after, in that it seems to be trying to show time spent in "Children", but it doesn't seem to do that completely so I'm not sure how to interpret it. I'd expect the parent of everything to show up with 100% including Children (or close to 100%) but nothing does. > Btw, I tried google-pprof (from the Debian stable > google-perftools 2.7-1 package) and couldn't figure it out... > Even the example from the manpage: `google-pprof /bin/ls ls.prof` > didn't seem to work. It tried to open an invalid URL with > curl 'http://ls.prof/pprof/profile?seconds=30' ... *shrug* It seems to handle "file not found" by trying to load the filename as a URL - that rarely seems helpful, but in particular makes for a confusing error message. The docs say to link with -lprofiler but it seems to work fine to LD_PRELOAD it and I find that easier to work with so I use it like so: LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libprofiler.so CPUPROFILE=$HOME/prof.out /usr/bin/xapian-compact /mnt/data/scratch/text/tmp06.db /mnt/data/scratch/text/06.db google-pprof /usr/bin/xapian-compact $HOME/prof.out At the prompt inside, "gv" renders a callgraph in postscript and "callgrind" generates a file like that from valgrind's callgrind tool which you can inspect with kcachegrind, etc. Cheers, Olly