Hi Sparsh,
'atomic' statements may be nested within 'at' statements/expression, but
not vice versa (Language Spec ยง14.7.1).
An 'at' expression may contain multiple statements; the final line
(without semi-colon) will be the value of the expression.
So for example you could write something like:
val myAnswer = at(place2) {
val result:Int;
atomic result = myDistArray(actualIndex);
result
};
I'm not sure if this makes sense in the context of your app. Presumably
there are also activities writing to the array, which must also be done
atomically.
Cheers,
Josh
On 23/02/13 03:51, Sparsh Mittal wrote:
Thanks a lot. I did that and am getting an error, which is as follows.
I have a DistArray over 2 places which holds some values and I have to
allow activities from these 2 places to access DistArray. That means,
an activity at one place should be able to access (which means read
and modify) DistArray value which is at another place.
So problem is to ensure that access is atomic. When I write:
/myAnswer = at(place2) myDistArray(actualIndex);/
it is not atomic, since two activities may together read the myDistArray.
And when I do:
/atomic {
//myAnswer = at(place2) myDistArray(actualIndex);
}
/
It is not allowed since atomic operation has to be all on one place.
And when I do:
/val myAnswer:int ;
at(place2)
{
atomic {
//myAnswer = at(place2) myDistArray(actualIndex); //
}
}/
it says: /Local variable is accessed at a different place, and
therefore it must be an initialized val
Variable name: myAnswer
Final variable might already have been initialized
/So, I am not sure how to implement reading from another place, while
making sure that no two activities read at the same time since an
activity reads an array item that item is considered to be used-up
(not shown here).
Please let me know. Thanks for your time.
/
/
Thanks and Regards
Sparsh Mittal
On Thu, Feb 21, 2013 at 3:24 PM, Josh Milthorpe
<josh.miltho...@anu.edu.au <mailto:josh.miltho...@anu.edu.au>> wrote:
Hi Sparsh,
the DistArray class is perfect for sharing data (and work) between
places. See section 16 of the language spec. Also, ateach
(section 14.5) is a simple way to execute over all elements in a
DistArray.
Cheers,
Josh
On 22/02/13 01:02, Sparsh Mittal wrote:
I wanted to seek answer to the above question and would be
grateful if you could answer or point me to a suitable reference.
The essence of question is how to have shared data b/w different
places. Thanks.
Thanks and Regards
Sparsh Mittal
On Tue, Feb 19, 2013 at 4:44 PM, Sparsh Mittal
<sparsh0mit...@gmail.com <mailto:sparsh0mit...@gmail.com>> wrote:
Hello
I wrote two programs:
1. A program where I issue "async doWork()" inside a for
loop. I run this with X10_NTHREADS=2
2. A program where I issue "async at(kk) doWork()" inside a
for loop. I run this program with X10_NPLACES=2.
The doWork() function (called worker) is such that different
workers have to communicate. For this, I use an array in the
class.
In case 1, it was easy, since a single copy of array is
created and both workers can read from it.
In case 2, I think, the array is copied to another place
also; so both workers end up doing all the works.
Can you suggest, how can I alleviate this problem?
Specifically, how to enable communication between different
places. Thanks a lot for your help.
Thanks and Regards
Sparsh Mittal
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net <mailto:X10-users@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/x10-users
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net
<mailto:X10-users@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/x10-users
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/x10-users
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/x10-users