|
From: Bart V. A. <bar...@gm...> - 2006-09-05 04:56:14
|
Hello Tony,
Three questions:
- Is the paper about PTT available online ?
- Does the PTT tool report false positives ?
- You wrote about an impact on behavior. Can you explain this further ?
On 9/4/06, Tony Reix <ton...@bu...> wrote:
>
> Hello,
>
> Two years ago, we had studied Valgrind/Helgrind.
> Our conclusion was that it was not the perfect solution for helping
> these kinds of users: NPTL maintainers, and Linux customers support.
>
> If I remember well, Helgrind provides its own thread library. So it
> helps to find some kinds of bugs, but it cannot help in many complex
> cases related to NPTL details.
>
> So, we developed a tool named PTT (NPTL POSIX Trace Tool), aimed at
> providing a trace tool integrated into the NPTL library, with the lowest
> impact to performance and behavior as possible. It also provides some
> performance information related to contention.
> PTT is available at:
> http://sourceforge.net/projects/nptltracetool
> http://nptltracetool.sourceforge.net/
> (See OLS'05 for a paper describing PTT. Or read the up-to-date
> documentation on these sites).
> PTT has been built by several students working at Bull labs since 2004
> and is fully Open Source.
>
> PTT is now mature and is easy to use by end-users. It comes with
> documentation and has been ported/tested on ia32, x86_64, ppc (still
> bugs ...) and on medium/large multi-processor machines. It has been
> tested with OPTS and some other applications (Java, HPC).
>
> PTT could also be added to glibc by distributions: it generates an
> unmodified version of the glibc and a separate version of glibc enabling
> to generate traces. And one can move from one library to the other very
> easily.
>
> But the best solution would be to have it added to the glibc sources. it
> would be a matter of hours to add it.
> Discussions with glibc maintainers (Ulrich Drepper !!) have failed.
> These guys do not seem to add a debug tool inside the glibc ... Probably
> they do not know what "customer" and "support" mean.
>
> My opinion is that the number of multi-threaded applications will
> increase quickly now due to the availability of multi-core processors.
> Since multi-threading is so complex, tools are needed.
>
> So, if Valgrind developers are interested by PTT and would like either
> to add it to the Valgrind's Tool Suite or to mix it with the Helgrind
> tool, that would be very nice and very useful for the Linux community, I
> think.
> The main 4 values of PTT source code are:
> - its ability to integrated smoothly within glibc source code,
> - the trace points which required a lot of study to define,
> - the motor and buffer aimed at not slowing down applications,
> - the integration within NPTL.
>
> (The best solution is still to convince the glibc maintainers to accept
> PTT. But, after several tries, I have no more hope ... However, once
> SystemTap offers user-land hooks and is widely accepted by the
> community, I guess they will have to change their mind and to accept
> debug/trace tools.)
>
> Some people working in Linux RT are interested by an extension of PTT to
> RT, but I've had no news since months ...
>
|