‎10-10-2012 05:25 AM
If I try to place a Timed Structure in a Parallel For Loop, the TS needs a different structure name per instance to prevent collisions. However, setting the Structure Name node to something unique per instance doesn't work, I get error -808. Have I missed something?
‎10-10-2012 06:00 AM
I get the same error even with N=1.
Marco
‎10-10-2012 06:26 AM - edited ‎10-10-2012 06:28 AM
That got me thinking - something to do with the number of compiled parallel instances.
Indeed, the compiler creates a number of parallel instances of the for loop in the compiled code (in my case 8), and uses the number requested at the Parallel Instances terminal (just under the Iterations terminal), which is set to 2. Therefore the compiler has created 8 instances of the Timed Structure, each in its own for loop instance, but they all have the same defined Structure Name. When launched, there is an immediate conflict because they can't share the same name, and error -808 is launched before the set Structure Name function can change it. Hence the error still shows when requesting only one instance, because the other seven still exist.
I guess this means you can't have Timed Structures (or Timed Loops for that matter too) in a Parallelised For Loop?
‎10-10-2012 06:58 AM
@Thoric wrote:
I guess this means you can't have Timed Structures (or Timed Loops for that matter too) in a Parallelised For Loop?
I'm afraid you are right,
but then why the "find parallelizable loops" tool doesn't warn us of the issue?
Marco
‎10-11-2012 09:54 AM
Hi Thoric,
I've replicated the issue and will be submitting a corrective action request when I can to R&D, who should decide on the best course of action.
I will post the reference when it is available.
‎10-12-2012 08:43 AM
‎10-17-2012 11:49 AM
No problem, It's now in the capable hands of R&D!
‎10-17-2012 05:31 PM
‎10-18-2012 10:33 AM
Yes sorry, I did say I was going to post that but I managed to miss it.
It's CAR #374805