Kshitij Mehta <kvm1...@gmail.com> wrote on 11/10/2009 04:01:16 PM:

> > The answer to your first question is "no" - there is no way to find
> > out which processor a particular activity is running on
> > As for the second question, if you use an external launcher, e.g.,
> > mpirun, with an appropriate hostfile, you can be assured that each
> > process (corresponding to a place) is spawned on a different node.
> 
> In case of a shared memory machine (single node) can I be sure that 
> each place is mapped to a different core? Its ok if I cannot verify 
> that through the language.

No, you cannot.  That's what I referred to as "processor binding" below,
and we have not implemented it on any system but AIX (for the Java
backend).

With the Java backend, how threads are mapped to cores would really
depend on your JVM.  With the C++ backend, the mapping would depend on
the operating system.
        Igor

> On Nov 10, 2009, at 2:36 PM, Igor Peshansky wrote:
> 
> > Kshitij Mehta <kvm1...@gmail.com> wrote on 11/10/2009 02:53:48 PM:
> >
> >> Hello
> >> I am running an x10 program (v 1.7) using the java backend on an 8
> >> core machine. I have set my NUMBER_OF_LOCAL_PLACES option to 8. Is
> >> there a way I can verify that 'ateach' runs its code block on 
> >> separate
> >> cores? On similar lines, if I run my program on separate nodes of a
> >> cluster, can I verify that the ateach block is indeed being run on
> >> separate nodes ?
> >>
> >> Something like:
> >> ateach {
> >>    Console.OUT.println("I am place: " + here.id + " on node: " +
> > node_id);
> >> }
> >
> > Hi, Kshitij,
> >
> > The answer to your first question is "no" - there is no way to find
> > out which processor a particular activity is running on (unless you
> > use some native functionality).  We used to have some processor
> > binding support for Java on AIX, but I don't think we ever added it
> > for other systems.
> >
> > As for the second question, if you use an external launcher, e.g.,
> > mpirun, with an appropriate hostfile, you can be assured that each
> > process (corresponding to a place) is spawned on a different node.
> > But again, you have no way (within the language) to verify that a
> > particular process is running on some node.  You could probably
> > use a native method that calls "hostname", though.
> >        Igor
-- 
Igor Peshansky  (note the spelling change!)
IBM T.J. Watson Research Center
XJ: No More Pain for XML's Gain (http://www.research.ibm.com/xj/)
X10: Parallel Productivity and Performance (http://x10.sf.net/)


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
X10-users mailing list
X10-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/x10-users

Reply via email to