[Radiance-general] Re: multi-processing on SGI Onyx

Greg Ward [email protected]
Thu, 30 Jan 2003 07:16:41 -0800


The magic word to change is in src/rt/ambient.c, in the function 
aposcmp(avp1, avp2), which should be corrected to read:

/* GW NOTE 2002/10/3:
  * I used to compare AMBVAL pointers, but found that this was the
  * cause of a serious consistency error with gcc, since the optimizer
  * uses some dangerous trick in pointer subtraction that
  * assumes pointers differ by exact struct size increments.
  */
static int
aposcmp(avp1, avp2)                     /* compare ambient value 
positions */
char    **avp1, **avp2;
{
         return(*avp1 - *avp2);
}

----------
On another note, I have been following with interest the discussion on 
parallel rendering solutions and alternatives to a working NFS lock 
manager.  I haven't responded because I haven't had anything 
intelligent to add...  It's sounding like the consensus is headed the 
direction of a socket-based client/server solution.  A dreadful pain to 
implement from all I've seen, but perhaps it's best in the long run.

-Greg