Hi,
I was trying to do the equivalent of an MPI_Gather using code like this.
finish for ( pt(i) in v_dst ) {
v_loc(i).copyFrom(0,v_dst(pt),0,vsize);
where
static type Array1D = Array[Double]{rank==1};
global val v_dst: DistArray[Array1D]{rank==1};
global val v_loc: Array[Array1D]{rank==1};
- the region for all objects of type Array1D is [0..vsize-1],
- the region for v_loc and v_dst is [0..number_of_places-1],
- the distribution for v_dst maps exactly one point to each place.
The above code runs fine on one place. But on two places, it throws a
x10.lang.BadPlaceException: point (1) not defined at (Place 0).
pt(1) lives on place 1 by definition, so the exception is thrown correctly.
Means - the above code snippet is wrong. I tried about half a dozen variants
of the above, but no avail.
How to do it right ?
--
Mit freundlichen Grüßen / Kind regards
Dr. Christoph Pospiech
High Performance & Parallel Computing
Phone: +49-351 86269826
Mobile: +49-171-765 5871
E-Mail: [email protected]
-------------------------------------
IBM Deutschland GmbH
Vorsitzender des Aufsichtsrats: Erich Clementi
Geschäftsführung: Martin Jetter (Vorsitzender),
Reinhard Reschke, Christoph Grandpierre,
Klaus Lintelmann, Michael Diemer, Martina Koederitz
Sitz der Gesellschaft: Ehningen / Registergericht: Amtsgericht Stuttgart, HRB
14562 WEEE-Reg.-Nr. DE 99369940
------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:
Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
X10-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/x10-users