|
From: Bruce M. <bm...@gm...> - 2010-12-06 20:59:11
|
On 6 December 2010 05:16, Nicholas Nethercote <n.n...@gm...> wrote: > On Mon, Dec 6, 2010 at 2:02 AM, Bruce Merry <bm...@gm...> wrote: >> >> I've been developing a Valgrind tool for logging addresses of data >> accesses (with a more compact binary format than the lackey output) >> and a corresponding graphical viewer. I'd like to find out whether >> there is interest from the Valgrind developer community for this to be >> incorporated into Valgrind at some point. > > First question: what's it useful for? I see some pictures of sorting > algorithms which are pretty but don't seem terribly useful... Hi To some extent, the sorting is more pretty than useful, although there may be some applications in reverse engineering (I only thought of running it on sorting algorithms because one of my first tests of the viewer was running it on "ls" and when I looked at the output I could clearly identify a merge sort). The intended use is to be able to visually identify poor memory access patterns. Cachegrind is all well and good for telling you that one small area of code is hammering the cache, but there are a lot of things it doesn't show so clearly. For example, code that simply has to iterate across megabytes of data but has a nice linear access pattern will show up much hotter in cachegrind than code that touches one byte in each of a few hundred cache lines, even though the latter is the only one you can do much about. I've already used it to spot several places where data structure layout can be improved in a performance-critical application. > After that, it would need good docs, preferably some reasonable number > of tests, and a commitment from you to maintain it. Useful info, thanks. I've got some docs written - they're probably not fully up to date at this point, but they're reasonably detailed and written in the DocBook framework that the rest of the Valgrind docs use. I haven't gotten around to writing tests yet. In the short term I wouldn't be able to make any commitments about maintaining it since I have my fingers in too many pies at the moment, but that may change by the time I get around to writing tests and fixing up the known bugs. Perhaps at this stage a more appropriate way to advertise this to interested parties would be with a link on http://valgrind.org/downloads/variants.html? Obviously I'd need to actually write a web page for it to link to first. Thanks Bruce -- Dr Bruce Merry bmerry <@> gmail <.> com http://www.brucemerry.org.za/ http://blog.brucemerry.org.za/ |