yade-dev team mailing list archive
-
yade-dev team
-
Mailing list archive
-
Message #12578
[Bug 1559098] Re: Crash when Parallelization is used for O.bodies.replaceByClumps
Should be fixed in e35535b.
@Christian. I needed to remove parallel execution of that algorithm,
because it was buggy. If one need to make it correctly, we need to
collect new bodies and removal list in a thread-safe containers (openmp-
accu). In your case you did insert/removal on body container parallelly,
but it is not thread-safe, that is why one get segfault.
Regards
Anton
** Changed in: yade
Status: New => Fix Committed
** Changed in: yade
Importance: Undecided => Medium
** Changed in: yade
Assignee: (unassigned) => Anton Gladky (gladky-anton)
--
You received this bug notification because you are a member of Yade
developers, which is subscribed to Yade.
https://bugs.launchpad.net/bugs/1559098
Title:
Crash when Parallelization is used for O.bodies.replaceByClumps
Status in Yade:
Fix Committed
Bug description:
The script crashes (Erreur de segmentation (core dumped) ) when I try
use more than one core, at the line O.bodies.replaceByClumps.
YADE version: the latest one complied from getHub trunk
A simple script:
# encoding: utf-8
# Sphere package:
sp1=pack.SpherePack()
# Create the spheres of the package:
sp1.makeCloud((0,0,0),(0.5,0.5,0.5),rMean=0.0075,rRelFuzz=0.33)
# Send them to the simulation:
sp1.toSimulation()
# Replace spheres with clumps:
templates= []
relRadList1=[0.0075,0.0075]
relPosList1=[[0.0075,0,0],[0.0075*2,0,0]]
templates.append(clumpTemplate(relRadii=relRadList1,relPositions=relPosList1))
clumpIds=O.bodies.replaceByClumps(templates,[1]) # THE SCRIPT CRASHES
BECAUSE OF THIS LINE !
Adel
To manage notifications about this bug go to:
https://bugs.launchpad.net/yade/+bug/1559098/+subscriptions
References