[ODE] dWorldStep() crashes with a large number of contact joints. (update)

Nguyen Binh ngbinh at glassegg.com
Thu Oct 16 17:47:46 MST 2003


AM> I have traced backed into the ODE source to try to find
AM> the problem. The crash occurs in the file lcp.cpp, inside
AM> th dLCP constructor, line 800 (ODE 0.039):

AM>   // if there are unbounded variables at the start, factorize A up to that
AM>   // point and solve for x. this puts all indexes 0..nub-1 into C.
AM>   if (nub > 0) {
AM>    for (k=0; k<nub; k++)        HERE --> memcpy(L+k*nskip,AROW(k),(k+1)*sizeof(dReal)); 
AM> ....

AM> Being a memcpy() call, I guess the problem should be a dangled pointer or a failed memory allocation. Unfortunately I am not aquainted
AM> with the ODE internals, so it is difficult for me to guess where the 
AM> problem lies, and I cannot find any problem in my software either. Can anyone help me with this?

    Hi,
    Maybe another old times ODE stack problem.
    StepFast need alot of heap to run.Especially when many objects
    collides each other.Please search the mail archive
    for exact informations.So you can:
    
        + Increase your prog heap by some compiler switchs
        + Use StepFast1 instead (less mem,faster but less accurate)

-- 
Best regards,

---------------------------------------------------------------------
   Nguyen Binh
   Software Engineer
   Glass Egg Digital Media
   
   E.Town Building  
   7th Floor, 364 CongHoa Street
   Tan Binh District,
   HoChiMinh City,
   VietNam,

   Phone : +84 8 8109018
   Fax   : +84 8 8109013

     www.glassegg.com
---------------------------------------------------------------------



More information about the ODE mailing list