← Back to team overview

yade-dev team mailing list archive

[Bug 721107] Re: InsertionSortCollider memory leaks

 

Valgrind reports about problems with
InsertionSortCollider::handleBoundInversion. All memory leak from this
function, as seems. May be something  is wrong with creating of the
interactions  for the new particles?

Valgrind report:
--------------------------------------------------------------------------------
  n        time(i)         total(B)   useful-heap(B) extra-heap(B)    stacks(B)
--------------------------------------------------------------------------------
 47 74,791,217,242      854,819,752      735,410,607   119,409,145            0
86.03% (735,410,607B) (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
->33.37% (285,212,808B) 0x192CC889: InsertionSortCollider::handleBoundInversion(int, int, InteractionContainer*, Scene*) (in /home/sega/YADE/lib/yade-trunk/plugins/libplugins.so)
| ->33.37% (285,212,808B) 0x192CE9AD: InsertionSortCollider::action() (in /home/sega/YADE/lib/yade-trunk/plugins/libplugins.so)
|   ->33.37% (285,212,808B) 0xFB86C02: Scene::moveToNextTimeStep() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|     ->33.37% (285,212,808B) 0xFB8796A: SimulationFlow::singleAction() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|       ->33.37% (285,212,808B) 0xFB80B3F: ThreadWorker::callSingleAction() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|         ->33.37% (285,212,808B) 0xFB844F6: ThreadRunner::call() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|           ->33.37% (285,212,808B) 0xFB84572: ThreadRunner::run() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|             ->33.37% (285,212,808B) 0x8B31A52: boost::function0<void>::operator()() const (in /usr/lib64/libboost_python.so.1.39.0)
|               ->33.37% (285,212,808B) 0x7B2500E: thread_proxy (in /usr/lib64/libboost_thread.so.1.39.0)
|                 ->33.37% (285,212,808B) 0x51B665B: start_thread (pthread_create.c:297)
|                   ->33.37% (285,212,808B) 0x5AF8ECB: clone (clone.S:112)
|                     
->12.20% (104,301,400B) 0xFB80F4C: InteractionContainer::insert(boost::shared_ptr<Interaction> const&) (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
| ->12.20% (104,301,400B) 0x192CC8B2: InsertionSortCollider::handleBoundInversion(int, int, InteractionContainer*, Scene*) (in /home/sega/YADE/lib/yade-trunk/plugins/libplugins.so)
|   ->12.20% (104,301,400B) 0x192CE9AD: InsertionSortCollider::action() (in /home/sega/YADE/lib/yade-trunk/plugins/libplugins.so)
|     ->12.20% (104,301,400B) 0xFB86C02: Scene::moveToNextTimeStep() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|       ->12.20% (104,301,400B) 0xFB8796A: SimulationFlow::singleAction() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|         ->12.20% (104,301,400B) 0xFB80B3F: ThreadWorker::callSingleAction() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|           ->12.20% (104,301,400B) 0xFB844F6: ThreadRunner::call() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|             ->12.20% (104,301,400B) 0xFB84572: ThreadRunner::run() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|               ->12.20% (104,301,400B) 0x8B31A52: boost::function0<void>::operator()() const (in /usr/lib64/libboost_python.so.1.39.0)
|                 ->12.20% (104,301,400B) 0x7B2500E: thread_proxy (in /usr/lib64/libboost_thread.so.1.39.0)
|                   ->12.20% (104,301,400B) 0x51B665B: start_thread (pthread_create.c:297)
|                     ->12.20% (104,301,400B) 0x5AF8ECB: clone (clone.S:112)
|                       
->11.78% (100,663,296B) 0xFC31010: std::vector<boost::shared_ptr<Interaction>, std::allocator<boost::shared_ptr<Interaction> > >::_M_fill_insert(__gnu_cxx::__normal_iterator<boost::shared_ptr<Interaction>*, std::vector<boost::shared_ptr<Interaction>, std::allocator<boost::shared_ptr<Interaction> > > >, unsigned long, boost::shared_ptr<Interaction> const&) (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
| ->11.78% (100,663,296B) 0xFB80FC5: InteractionContainer::insert(boost::shared_ptr<Interaction> const&) (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|   ->11.78% (100,663,296B) 0x192CC8B2: InsertionSortCollider::handleBoundInversion(int, int, InteractionContainer*, Scene*) (in /home/sega/YADE/lib/yade-trunk/plugins/libplugins.so)
|     ->11.78% (100,663,296B) 0x192CE9AD: InsertionSortCollider::action() (in /home/sega/YADE/lib/yade-trunk/plugins/libplugins.so)
|       ->11.78% (100,663,296B) 0xFB86C02: Scene::moveToNextTimeStep() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|         ->11.78% (100,663,296B) 0xFB8796A: SimulationFlow::singleAction() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|           ->11.78% (100,663,296B) 0xFB80B3F: ThreadWorker::callSingleAction() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|             ->11.78% (100,663,296B) 0xFB844F6: ThreadRunner::call() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|               ->11.78% (100,663,296B) 0xFB84572: ThreadRunner::run() (in /home/sega/YADE/lib/yade-trunk/lib/libcore.so)
|                 ->11.78% (100,663,296B) 0x8B31A52: boost::function0<void>::operator()() const (in /usr/lib64/libboost_python.so.1.39.0)
|                   ->11.78% (100,663,296B) 0x7B2500E: thread_proxy (in /usr/lib64/libboost_thread.so.1.39.0)
|                     ->11.78% (100,663,296B) 0x51B665B: start_thread (pthread_create.c:297)
|                       ->11.78% (100,663,296B) 0x5AF8ECB: clone (clone.S:112)

-- 
You received this bug notification because you are a member of Yade
developers, which is the registrant for Yade.
https://bugs.launchpad.net/bugs/721107

Title:
  InsertionSortCollider memory leaks

Status in Yet Another Dynamic Engine:
  Confirmed

Bug description:
  If  add a particles after start a simulation, InsertionSortCollider's memory leak occurs.
  If set verletDist=0 in ISC, no memory leak.



Follow ups

References