From: Yair Kurzion (yair++at++polygon.engr.sgi.com)
Date: 01/22/2001 13:13:38
Hello Yoram !
purify doesn't know about arena mallocs. The only way to run purify on
a Performer program is to bluff it - wrap all arena calls and use heap malloc
instead. For this to work, the program MUST run in a single process
mode (PFMP_APPCULLDRAW).
Here is the recipe:
o Compile the program pureamalloc.c:
#include <stdlib.h>
void *amalloc(int n) {return malloc(n);}
void afree(void*p) {free(p);}
void *arealloc(void*p, int n) {return realloc(p, n);}
o Link with:
ld pureamalloc.o -shared -o pureamalloc.so
o Before running your program w/purify:
setenv _RLDN32_LIST `pwd`/pureamalloc.so:DEFAULT
o Run Single-Process only !
Notes:
In order to figure out what purify complaints are your fault, run purify on
some simple Performer program and compare the complaints:
o Performer makes many one-time allocations that it never frees.
o Some GLX calls make purify complain.
o Some loader calls make purify complain.
-yair
> I have tried running memory tests with Purify on our performer
> application.
> Even running a simple application with very little data causes purify to
> complain about thousands of memory problems - specially around pfWindow
> and pfProcess.
> Even running tests on the example in /usr/share/Performer.../simple
> causes an enourmous amount of problems.
>
> Are these things known?
> Is Performer very unclean ( in Purify standards ) ?
> Could it be that it is all our fault of bad usage ?
> If so, does 'simple' abuse Performer as well ?
>
> regards and thanx
>
> :o)
>
> Yoram Shahak
> Dreamteam-ltd.
>
>
>
> -----------------------------------------------------------------------
> List Archives, FAQ, FTP: http://www.sgi.com/software/performer/
> Open Development Project: http://oss.sgi.com/projects/performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
>
--
\_________ \_____ \__ \__ \_____ Yair Kurzion
\_________ \_____ \__ \__ \_____ yair++at++sgi.com
\__ \__ \____\__ \__ http://reality.sgi.com/yair
\__ \__ \__ Work: (650) 933-6502
\__ \__ \__ Home: (408) 226-9771
\__ \__ \__
This archive was generated by hypermail 2b29 : Mon Jan 22 2001 - 13:13:47 PST