Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Open => Expired Launchpad Janitor expired the question: This question was expired because it remained in the 'Open' state without activity for the last 15 days. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Needs information => Open Luis Barbosa gave more information on the question: There is no overlapping. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Open => Needs information Bruno Chareyre requested more information: Oh... but I thought the question was about "large number of particles". Now it's about "packs". what do these packs look like? Would they contain overlapping spheres? B -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Luis Barbosa gave more information on the question: Here is how I am running: + singularity run /beegfs/common/singularity/yade/yade_debian_bookwarm_1.0.sif yadedaily -j80 drain_importMatrixTriax7_10_c3.py Here is the output: double free or corruption (!prev) Interesting to note: 1. I have used tcmalloc, as suggested here: https://github.com/tensorflow/tensorflow/issues/6968 https://www.google.com/search?client=firefox-b-d&q=apt-get+install+google-perftools https://riptutorial.com/tensorflow/example/13427/use-the-tcmalloc-allocator But, it just gave me another output: "Core dumped" 2. >From the TwoPhaseFlowEngine I played around to see where exactly the error >happens and discovered that it is related to unsat.invasion(), Invasion 1 or >invasion 2 in the hpp file. In some scripts that I have double free or >corruption (!prev), when I switch .isPhaseTrapped=False, than it worked, but >in the script I provided above it still did not worked. 3. Sometimes, I am getting the message, when using Yadedaily, but not for Yade. <[36mNOFILTER[0m> :[93m750[32m void yade::CGT::Network::lineSolidPore(yade::CGT::Network::CellHandle, int) [with Tesselation = yade::CGT::_Tesselation >; yade::CGT::Network::CellHandle = CGAL::internal::CC_iterator, CGAL::Triangulation_cell_base_with_info_3, CGAL::Regular_triangulation_cell_base_3, CGAL::Triangulation_cell_base_3, CGAL::Triangulation_ds_cell_base_3, CGAL::Triangulation_vertex_base_with_info_3, CGAL::Regular_triangulation_vertex_base_3 > >, CGAL::Boolean_tag, CGAL::Boolean_tag >, CGAL::Alpha_shape_cell_base_3, CGAL::Triangulation_cell_base_with_info_3, CGAL::Regular_triangulation_cell_base_3 > >, CGAL::Boolean_tag, CGAL::Boolean_tag >, CGAL::Sequential_tag> > >, CGAL::Hidden_points_memory_policy >, std::__cxx11::list >, std::allocator > > > > >, CGAL::Boolean_tag, CGAL::Boolean_tag >, CGAL::Default, CGAL::Default, CGAL::Default>, false>][0m: Unhandled switch case:3 -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Answered => Open Luis Barbosa is still having a problem: For this I have to provide txt files for the creation of the packs. Sorry for the external links: https://drive.google.com/file/d/16y5Ia4kUUm6oap8QlnSvQf9uCuMzJ7TN/view?usp=sharing https://drive.google.com/file/d/1_rUoO-6b2j6e3LSRsMlh8C4vKRu8txoN/view?usp=sharing https://drive.google.com/file/d/1oR9bHoru- Us6wvHwn7UpkZwt9IX6GRvE/view?usp=sharing https://drive.google.com/file/d/1cLyeXTjNuavGRxuFv27HyPxvtn-2EW5i/view?usp=sharing = from yade import pack from yade import bodiesHandling from yade import export from yade import utils from yade import ymport import math ### DEFINING VARIABLES AND MATERIALS ### # The following 5 lines will be used later for batch execution nRead=readParamsFromTable( num_spheres=3000,# number of spheres compFricDegree = 1, # contact friction during the confining phase key='_triax_base_', # put you simulation's name here unknownOk=True ) from yade.params import table num_spheres=table.num_spheres# number of spheres key=table.key targetPorosity = 0.50 #the porosity we want for the packing compFricDegree = table.compFricDegree # initial contact friction during the confining phase (will be decreased during the REFD compaction process) finalFricDegree = 30 # contact friction during the deviatoric loading rate=0 # loading rate (strain rate) damp=0.8 # damping coefficient stabilityThreshold=0.01 # we test unbalancedForce against this value in different loops (see below) young=80e5 # contact stiffness200e4 young2=80e5 youngcoat=50e5 bondstr=1000#2e7 bondstr2=1000 bondstrcoat=10 ## create materials for spheres and plates mat=O.materials.append(JCFpmMat(type=1,young=young,poisson=0.3,frictionAngle=radians(compFricDegree),density=2000,tensileStrength=bondstr,cohesion=bondstr,jointNormalStiffness=0,jointShearStiffness=0,jointCohesion=bondstr,jointFrictionAngle=radians(0),jointDilationAngle=0.0,label='spheres')) O.materials.append(JCFpmMat(type=1,young=20e7,poisson=0.3,frictionAngle=radians(0),density=2600,tensileStrength=0,cohesion=0,jointNormalStiffness=0,jointShearStiffness=0,jointCohesion=0,jointFrictionAngle=radians(0),jointDilationAngle=0.0,label='walls')) O.materials.append(JCFpmMat(type=1,young=youngcoat,poisson=0.3,frictionAngle=radians(1),density=1500,tensileStrength=bondstrcoat,cohesion=bondstrcoat,jointNormalStiffness=0,jointShearStiffness=0,jointCohesion=bondstrcoat,jointFrictionAngle=radians(0),jointDilationAngle=0.0,label='spherescoat')) ## create walls around the packing mn,mx=Vector3(0,0,0),Vector3(0.0015,0.0015,0.0015) mnbox,mxbox=Vector3(0,0,0),Vector3(0.002,0.00195,0.002) walls=aabbWalls([mnbox,mxbox],thickness=0,material='walls') wallIds=O.bodies.append(walls) O.bodies.append(ymport.textExt("matrix_vtest6.txt", format='x_y_z_r', shift=Vector3(0,0.00025,0), scale=1.0,material='spheres',color=(0,1,1))) O.bodies.append(ymport.textExt("coat_vtest5e5.txt", format='x_y_z_r', shift=Vector3(0,0,0), scale=1.0,material='spherescoat',color=(0,1,1))) Particle substitution by large aggregate## bodid=[] for b in O.bodies: if b and isinstance(b.shape,Sphere): # print (b.shape.radius) if b.state.pos[1]>0.00175: bodid.append(b.id) i=0 for p in bodid: O.bodies.erase(bodid[i]) i=i+1 bodid=[] a=[] for b in O.bodies:# in sp: if b and isinstance(b.shape,Sphere): # print (b.shape.radius) if b.shape.radius==0.0002: bodid.append(b.id) a.append(b.state.pos) i=0 for p in bodid: t=a[i] f1=O.bodies.append(ymport.textExt("agg2e4_10e6.txt", format='x_y_z_r', shift=t-Vector3(0,0,0.0002), scale=1.0,material='spheres',color=(0,1,1))) O.bodies.erase(bodid[i]) i=i+1 bodiddd=[] aaa=[] for bbb in O.bodies:# in sp: if bbb and isinstance(bbb.shape,Sphere): # print (b.shape.radius) if bbb.shape.radius==0.0005: bodiddd.append(bbb.id) aaa.append(bbb.state.pos) iii=0 for ppp in bodiddd: ttt=aaa[iii] f3=O.bodies.append(ymport.textExt("agg5e5_18e6.txt", format='x_y_z_r', shift=ttt-Vector3(0,0,0.0005), scale=1.0,material='spheres',color=(0,1,1))) O.bodies.erase(bodiddd[iii]) iii=iii+1 ## #=
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Bruno Chareyre requested more information: > Yes Your question states the opposite it seems... Can you be more specific on which number of particles gives the problem and provide a script showing the problem? Bruno -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Luis Barbosa posted a new comment: >>So you have crashes without MPI and without aggregates when using many >>particles? Yes. I also tried without singularity using Yade 2022124 -6294 bionic and got the same issue. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Bruno Chareyre requested more information: Indeed. It's a glibc error [1] even if it sounds mechanical ("consolidation"). So you have crashes without MPI and without aggregates when using many particles? B [1] https://stackoverflow.com/questions/49628615/understanding- corrupted-size-vs-prev-size-glibc-error -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Open => Answered Bret Ritchie proposed the following answer: That vitalizes the amazing bone! Here clearly accepting I endeavor an article I can pull off a couple of additional spaces! https://www.etenet.biz/ -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Answered => Open Luis Barbosa is still having a problem: Maybe this is not from the source code itself. But, somenthing in the python script allocating memory. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Luis Barbosa posted a new comment: Hi, The main topic is the use of TwoPhaseFlowEngine with large number of particles. I am runnig singularity: Yade 2021.01a python version: 3.9.7 (default, Sep 24 2021, 09:43:00) Luis -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Open => Answered Bruno Chareyre proposed the following answer: > still it works for lower number of particles You mean it doesn't crash, right? Even so, I don't see it giving consistent results. > "corrupted size vs. prev_size while consolidating" I don't find this text anywhere in the source code... this is puzzling. Which version is that? Please choose a topic: is it MPI or is aggregates, or is it something else?? Bruno -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Answered => Open Luis Barbosa is still having a problem: Thanks Bruno. This may just play a bad MPI efficiency, but still it works for lower number of particles. But anyway, I ran this example without MPI to check, and obtained: corrupted size vs. prev_size while consolidating Again, this error just happens when using agglomerates. The error appears when the drainage starts. If I use the same script but with less particles, it works. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #700611]: TwoPhaseFlow - double free or corruption
Question #700611 on Yade changed: https://answers.launchpad.net/yade/+question/700611 Status: Open => Answered Bruno Chareyre proposed the following answer: Hi, This has 0% chances to work. MPI uses a domain decomposition with one yade instance running each subdomain. What happens in your script is that each yade instance has its own 2PFV engine trying to triangulate+solve a flow problem in a subset of particles with no walls, and with no knowledge of what happens in the other subdomains (hence inconsistent triangulations, no connectivity of fluxes accross subdomains, etc.). Worth than that, particles can be exchanged between subdomains, so 2PFV may look for positions of particles which are no longer in the scene. You need to think about what really happens with domain decomposition if you want to understand what can/cannot work. In this case it would need a specific implementation of 2PFV in order support MPI. Bruno -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp