Greg,
Thanks for your help.
First, I should say I
am new to OpenMPI. We are set up for MPICH2. I am an experienced
Eclipse user, however, and would like to try Eclipse, including installing
Tau. This is the reason for using OpenMPI.
I modified openmpi-default-hostfile,
as you suggested, and I can now run on the command line with:
mpiexec --prefix
/clhome/EVANS/openmpi -n 5 helloWorld
(Note: No machine
file.) My .login sets MPICH2 paths. I can reset the paths on the
machine on which I am running, but I need the –prefix for the nodes to
work. The paths are set for OpenMPI in a script that I use to start
Eclipse, but I would guess there is still the problem with the nodes that –prefix
fixes. Can this be handled in PTP?
It still doesn’t
work in Eclipse. I get the same exception. There is only one machine
(Machinemachine0, no typo) in the drop-down menu in the launch configuration.
Just what is this machine anyway and where is it set? I would expect a
list of nodes like in the openmpi-default-hostfile. The launcher seems
like the place to put this information. It also seems like there should
be a place for arguments to mpiexec in addition to those for the program.
Perhaps I have missed something.
I tried restarting
Eclipse with –clean. It didn’t help.
The file ptp_orte_proxy exists and looks OK. I did not get
errors during sh BUILD. I added the following lines to BUILD, first:
--------------------------------------------------------------------------------
# Added manually to
the original since installation is non-standard
export
CFLAGS=-I/clhome/EVANS/openmpi/include
export
LDFLAGS="-L/clhome/EVANS/openmpi/lib
-Wl,-rpath,/clhome/EVANS/openmpi/lib"
--------------------------------------------------------------------------------
(BTW the directions on
the help page need some line breaks, and this isn’t exactly what I took
them to say, but it seems like it should do what I think they indicate is needed.)
My current Eclipse
output is:
--------------------------------------------------------------------------------
runEclipse
[1] 17287
47 blacklab.aps.anl.gov:EVANS>In
getResourceManagerFactories
retrieved factory: Simulation,
org.eclipse.ptp.simulation.core.resourcemanager
leaving getResourceManagerFactories
Your Control System Choice:
'<UNDEFINED CS>'
Your Monitoring System Choice:
'<UNDEFINED MS>'
No previous (or invalid) control or
monitoring system selected.
Default systems set to Open Runtime
Environment (ORTE). To change, use the Window->Preferences->PTP
preferences page.
Your Default Control System Choice: 'Open
Runtime Environment (ORTE)'
Your Default Monitoring System Choice:
'Open Runtime Environment (ORTE)'
In
retrieveConfigurationWizardPageFactories
wizard page factory:
org.eclipse.ptp.simulation.ui.wizards.SimulationRMConfigurationWizardPageFactory@837e21f
for class: class org.eclipse.ptp.rmsystem.SimulationResourceManagerFactory
leaving
retrieveConfigurationWizardPageFactories
XXXXXXXXXXX refreshRuntimeSystems(false),
isInitialized():false
XXXXXXXXXXX refreshRuntimeSystems calling
initialize(), force:false, isInitialized():false
refreshRuntimeSystems
SHUTTING DOWN CONTROL/MONITORING/PROXY
systems where appropriate
User selected 1 simulated machines.
SimPreferences: Machine 0 = 1 nodes
ModelManager.runtimeNodeGeneralName -
#keys = 2, #values = 2
Unknown machine ID (machine0), adding to
the model.
Unknown node number (0), adding to the model.
XXXXXXXXXXX refreshRuntimeSystems(false),
isInitialized():true
OS = 'linux', Architecture = 'x86_64',
OS_ARCH combo = 'org.eclipse.ptp.linux.x86_64'
PTP Version = 1.1.0
All Found Fragments:
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.x86_1.1.0/
[118]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.ppc_1.1.0/ [126]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_1.1.0/ [138]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/
[145]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.ppc_1.1.0/
[151]
Testing fragment 1 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.x86_1.1.0/'
Testing fragment 2 with this OS/arch -
path: '/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.ppc_1.1.0/'
Testing fragment 3 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_1.1.0/'
Testing fragment 4 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/'
Correct fragment for our OS & arch
Searching for file in
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/bin/sdm'
**** FOUND IT!
--------------------------------------------------------------------------------
Looking to the future: I use MPE. Is
there an easy way to point OpenMPI to the version that is already installed?
There is a paragraph about the advantages of using the mpicc wrapper somewhere
I looked. Can the OpenMPI mpicc be fixed to specify MPE with options like
“-mpe=log” as in MPICH2 or do I need to use –L and –l?
Thanks again,
-Ken
From: ptp-user-bounces@xxxxxxxxxxx
[mailto:ptp-user-bounces@xxxxxxxxxxx] On
Behalf Of Greg Watson
Sent: Tuesday, December 18, 2007
6:00 PM
To: PTP User list
Subject: Re: [ptp-user] PTP
Launcher Fails withJava.lang.reflect.InvocationTargetException
Hi Ken,
PTP 1.1 relies on OpenMPI for information on the nodes in the cluster.
This version doesn't have any support for machine files. If you edit
/clhome/EVANS/openmpi/etc/openmpi-default-hostfile and add the hostnames of the
other machines in the cluster then you should see them. You will also be able
to use 'mpirun -np 25 helloWorld' to run your application.
Also, it doesn't look like PTP built correctly. Please check in /clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/bin
for an executable called ptp_orte_proxy. Were there any errors when you run the BUILD
script?
On Dec 18, 2007, at 6:14 PM, Kenneth Evans wrote:
I have set up Eclipse, PTP, and OpenMPI
according to the directions. I can’t run anything using PTP,
though. In addition, it says there is only one machine, Machinemachine0,
in the launcher. This is on a 64-bit Linux cluster.
I _can_
run MPI programs using OpenMPI. However, in order to use other nodes than
the head node, I need to use:
mpiexec --prefix /clhome/EVANS/openmpi
--machinefile machines -n 25 helloWorld
I see no place in Eclipse | Preferences
to set the machine nodes.
I can also run an OpenMPI parallel
program using the External Tools launcher.
I have set up a launch configuration as
described in Help. When I run it, I get:
--------------------------------------------------------------------------------
Exception occurred during launch
Reason: Error within Debug UI:
Details:
Java.lang.reflect.InvocationTargetException
--------------------------------------------------------------------------------
(BTW I am using Run, not Debug, to
launch.)
My environment is set up in .login to
point to an MPICH2 installation. I reset PATH and LD_LIBRARY_PATH in the
script that launches Eclipse. BTW this was done in the shell in which I
ran “sh BUILD”. Thus there _could_
be a conflict, but it doesn’t look like there should be.
I can _build_
MPICH2 applications in an MPICH2 project by setting the PATH and
LD_LIBRARY_PATH in the environment for the make Project. (I am using
Standard, not Managed C / C++ builds). And I can _build_ OpenMPI applications in an OpenMPI
project without setting PATH and LD_LIBRARY_PATH. Thus, it seems I have
the paths set up OK.
I get these messages, which I don’t
understand, when starting Eclipse.
--------------------------------------------------------------------------------
41 blacklab.aps.anl.gov:bin>runEclipse
42 blacklab.aps.anl.gov:bin>In
getResourceManagerFactories
retrieved factory: Simulation,
org.eclipse.ptp.simulation.core.resourcemanager
leaving getResourceManagerFactories
Your Control System Choice: '<UNDEFINED
CS>'
Your Monitoring System Choice:
'<UNDEFINED MS>'
No previous (or invalid) control or
monitoring system selected.
Default systems set to Open Runtime
Environment (ORTE). To change, use the Window->Preferences->PTP
preferences page.
Your Default Control System Choice: 'Open
Runtime Environment (ORTE)'
Your Default Monitoring System Choice:
'Open Runtime Environment (ORTE)'
In
retrieveConfigurationWizardPageFactories
wizard page factory:
org.eclipse.ptp.simulation.ui.wizards.SimulationRMConfigurationWizardPageFactory@5e28df48
for class: class org.eclipse.ptp.rmsystem.SimulationResourceManagerFactory
leaving
retrieveConfigurationWizardPageFactories
XXXXXXXXXXX refreshRuntimeSystems(false),
isInitialized():false
XXXXXXXXXXX refreshRuntimeSystems calling
initialize(), force:false, isInitialized():false
SHUTTING DOWN CONTROL/MONITORING/PROXY
systems where appropriate
User selected 1 simulated machines.
SimPreferences: Machine 0 = 1 nodes
ModelManager.runtimeNodeGeneralName -
#keys = 2, #values = 2
Unknown machine ID (machine0), adding to the model.
Unknown node number (0), adding to the model.
OS = 'linux', Architecture = 'x86_64',
OS_ARCH combo = 'org.eclipse.ptp.linux.x86_64'
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.x86_1.1.0/ [118]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.ppc_1.1.0/ [126]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_1.1.0/ [138]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/
[145]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.ppc_1.1.0/ [151]
Testing fragment 1 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.x86_1.1.0/'
Testing fragment 2 with this OS/arch -
path: '/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.ppc_1.1.0/'
Testing fragment 3 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_1.1.0/'
Testing fragment 4 with this OS/arch -
path: '/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/'
Correct fragment for our OS & arch
Searching for file in
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/bin/sdm'
OS = 'linux', Architecture = 'x86_64',
OS_ARCH combo = 'org.eclipse.ptp.mpich2.proxy.linux.x86_64'
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.x86_1.1.0/ [118]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.ppc_1.1.0/ [126]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_1.1.0/ [138]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/
[145]
update@../eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.ppc_1.1.0/ [151]
Testing fragment 1 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.x86_1.1.0/'
Testing fragment 2 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.ppc_1.1.0/'
Testing fragment 3 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_1.1.0/'
Testing fragment 4 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.linux.x86_64_1.1.0/'
Testing fragment 5 with this OS/arch -
path:
'/clhome/EVANS/eclipsePlugins/eclipse/plugins/org.eclipse.ptp.macosx.ppc_1.1.0/'
--------------------------------------------------------------------------------
So it seems something isn’t set up
right, in particular, the available machines, but I can’t see any
configuration to fix it.
_______________________________________________
ptp-user mailing list
ptp-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-user