Skip to content

MPIAgent

hamar edited this page Jun 14, 2011 · 1 revision

MPI Agent

Description

The Job MPI Agent is an interface between a capable CE to run MPI Jobs and DIRAC WMS.

Functions

Function name, inputs and outputs:

submitJobMPI(self, jobMatch, resourceJDL):
Description: Submit MPI Job to the Grid, its the same than for normal jobs, just variations in order
             to update  MPIJobDB.

testStatusRing(self, directory): status
Description: If MPI Flavor is MPICH2 this function run mpdtrace command to get the ring status, and
             know how many processors are into the ring.

wait(self): status
Description: With this function the agent ask to the service for status of the ring, its a loop executed
             while status remain equal.

masterStart(self):{'Master':self.master, 'Port':0}
Description: This function start the master daemon

slaveStart(self, slaveDict): (slaveUP = True)
Description: This function start slave daemon using as paramenters master's hostname and port

setRingStatus(self): status
Description: This function is used to change the ring status. Status of the ring are: Empty, Accumulating,
             Ready, Starting, Running, Done, Failed, Exit

shutdownRing(self):(slaveUP = False)
Description: Kill all mpd daemons in all the machines of the ring.

shutdownMPD(self):
Description: Kill mpd daemon started by this agent.

testRing(self):
Description: This function is used to ask service if number of processors into the ring is less or
             equal than required by the job.

MPICH2environment(self):
Description: Set up MPICH2 environment variables

MPICH1environment(self):
Description: Set up MPICH1 environment variables

Configuration

Nothing in the CS is required to be added.

Clone this wiki locally