Don Hatch (hatch++at++hell.asd.sgi.com)
Fri, 13 Dec 1996 19:53:12 -0800
Hi Ted,
There are three big problems that keeps Purify from
being as useful as it could be for Performer programs
(multithreaded graphics programs in general).
These problems exist with Purify version 4.0 on SGI machines.
1. Purify does not know about amalloc/afree/arealloc, which are
the shared memory allocation routines used by virtually
every part of Performer.
Part of this missing functionality in Purify can be regained by
recompiling with those functions defined as malloc/free/realloc,
and then forcing Performer to run in single-process mode (i.e. partially
lobotomizing Performer), as Michael Allbright described.
There are also other memory allocation routines
(usmalloc, etc.) which I think are also not recognized by Purify,
though they are less frequently used.
2. Performer's memory allocation routines pfMalloc et al.
are wrappers for amalloc/afree/arealloc
that allocate a chunk of memory slightly bigger
than requested, and prepend a small header that is used internally.
Accessing the header outside of pfMalloc etc.
should be an illegal memory access, but Purify can not catch it.
3. There are hundreds of graphics routines (different for different
kinds of SGI graphics hardware) that Purify does not work well with,
mostly generating UMRs and ZPWs.
Probably these are what Michael is referring to.
I believe the UMRs are mostly from kernel calls that fill in memory
that Purify does not know about.
Deciding which of these errors are worth pursuing requires
a lot of guesswork on the part of the developer.
Fixing these problems will require a lot of
work and communication between graphics engineers at SGI and Pure Atria,
to sort out which bugs are SGI's and which are Purify's,
and to come up with a general plan for making Purify know about
graphics routines on existing and future machines.
Unfortunately this is not happening, and Purify continues to fall
distressingly short of being the incredibly useful tool that
it should be (and would be with the proper support from SGI).
Don
--
Don Hatch hatch++at++sgi.com (415) 933-5150 Silicon Graphics, Inc.
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:54:09 PDT