The master configuration file resides on the master node and informs the master node about basic system information. The master node must be included in the cluster and family sections of the file.
Regular configuration files are used by Configuration Managers to inform
DJMManager about additional capabilites that are accessible when the Configuration
Manager is started. The master node must not be included in
the cluster and family sections of the file.
////////////////////////////
// clusters
// clusters specify machine physical locality
cluster muppets {
bert.cs.byu.edu
ernie.cs.byu.edu
}
cluster mountains {
everest.cs.byu.edu
k2.cs.byu.edu
}
////////////////////////////
// families
// families specify machine characteristics
family linux_PPro_200 {
bert.cs.byu.edu
everest.cs.byu.edu
CAPACITY 4.2
// CAPACITY defines
the computational power of the node
}
family NT_P2_266 {
ernie.cs.byu.edu
k2.cs.byu.edu
CAPACITY 5.4
// SUBNODES 2
// SUBNODES defines
the number of processors on a machine
// it is not officially
supported, but you may try it for fun
}
////////////////////////////
// family commands
// Start commands are used to start remote nodes.
// Note that "NODE_NAME", "DJM_MANAGER_HOST_NAME", and "DOGMA_CODEBASE",
// ".SQ.", and ".DQ." are all automatically defined variables
// in start commands and clean commands
// Use .SQ. for single quotes and .DQ. for double quotes.
// The system will fill in these variables at runtime
// You could hardcode in these values if you wish
// Note that the linux start command example below includes
// NODE_NAME as a third parameter to startNode. This is
// because machines in this family have a shared file system
// and the environment variable DOGMA_HOSTNAME is not defined
// correctly for these machines.
// The NT example also includes NODE_NAME as a third parameter to
// startNode. This is not necessary if DOGMA_HOSTNAME is
set.
// Note also DOGMA scripts assume you are using csh as your shell.
// In order for startNode to work correctly from rsh, you must
// have both DOGMA_HOME and JDK_HOME set correctly. This
// is most easily done by sourcing the "setenvs" file that
// was created by the DOGMA install program.
// The NT start command does not include NODE_NAME as a final
// parameter because the environment variable DOGMA_HOSTNAME
// is set correctly for each machine.
// IMPORTANT! - YOU SHOULD ALWAYS TEST YOUR START COMMAND SETTINGS
// BY HAND BEFORE PUTTING THEM IN THE CONFIGURATION FILE.
// Note, however, that DOGMA will tokenize the start command and
// exec it using java.lang.Runtime.exec(String cmdarray[]).
// DOGMA breaks up tokens by whitespace. You may use single
// quotes to force DOGMA to group everything inside as one token.
// The configuration file generated by the install program has
// several examples in it for you to use.
startCommands {
linux_PPro_200 "/usr/bin/rsh
NODE_NAME $DOGMA_HOME/bin/startNode
DJM_MANAGER_HOST_NAME DOGMA_CODEBASE NODE_NAME
>&/dev/null </dev/null &"
NT_P2_266
"rsh NODE_NAME 'start cmd /c
%DOGMA_HOME%\bin\startNode.bat
DJM_MANAGER_HOST_NAME DOGMA_CODEBASE NODE_NAME'"
}
// Clean commands are used to kill zombie java processes on remote nodes.
cleanCommands {
linux_PPro_200
"rsh NODE_NAME killAllVMs"
}
////////////////////////////
// CodeServers
codeServers {
http://ernie.cs.byu.edu:8180/DOGMA/codebase/
http://daffy.cs.byu.edu/jdoe/codebase/
}
codeServerPackages {
http://ernie.cs.byu.edu/Dogma/codebase/
"dogma.examples"
http://daffy.cs.byu.edu/jdoe/codebase/
"jdoe"
}
///////////////////////////
// DJM_MANAGER_HOST_NAME
DJM_MANAGER_HOST_NAME ernie.cs.byu.edu