EnglishFrenchSpanish

Ad


OnWorks favicon

dietAgent - Online in the Cloud

Run dietAgent in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command dietAgent that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


dietAgent - DIET grid middleware agent

NAME


dietAgent - Main binary of the DIET Architecture for running DIET Agents (master and local
agents)

SYNOPSYS


dietAgent [config file] ...

DESCRIPTION


The DietAgent is the main binary of the DIET distribution. It is used for both master and
local agents of a DIET hierarchy.

DIET PLATFORM


A DIET platform is buildt upon Server Daemons (SeD). Requests are distributed amongst a
hierarchy of agents. The scheduler can rely on resources availability informations
collected from three different tools: NWS sensors which are placed on every node of the
hierarchy, from the application-centric performance prediction tool FAST which relies on
NWS informations or from CoRI Easy a module based on simple system calls and basic
performance tests.

The different components of a DIET architecture are the following:

Client A client is an application which uses DIET to solve computational problems.
Clients could be web pages, PSE scripts like Matlab or Scilab or native program.

Master Agent (MA)
A MA manages computation requests from clients. It chooses the best server
available to handle the request based on performance informations collected from
servers. Then, the reference of the chosen server is returned to the client.

Local Agent (LA)
A LA transmits requests between MAs and servers. LAs store a list of services
available in their subtree. For each service, LAs store a list of children (either
agents or servers) providing the former. Depending on the underlying network
topology, a hierarchy of LAs may exists between the MA and the appropriate servers,
one of LAs tasks is to do a partial scheduling on its subtree, effectively reducing
its MA workload.

Server Daemon (SeD)
A SeD encapsulate a computational resource. FOr instance, it can be locate on the
entry point of a parallel computer. SeD store a list of locally available data,
available computational solvers and performance-related information (available
memory amount or number or resources). During registration, SeD declare to its
parent agent (LA or MA) every computational problem it can solve. SeD can send
performance and hardware informations by using the CoRI module or performance
predictions for some kinds of problems by using the FAST module.

Master Agent DAG (MA DAG)
The Master Agent DAG (MADAG) provides DAG workflow scheduling. This agent serves as
the entry point to the Diet Hierarchy for a client that wants to submit a workflow.
The language supported by the MADAG is based on XML.

CORBA USAGE FOR DIET


DIET relies on the CORBA naming service for service discovery allowing every entity to
interconnect. Reference to the omniORB naming service is written down in a CORBA
configuration file whose path is given to omniORB through the environment variable
OMNIORB_CONFIG.

The lines concerning the name server in the omniORB configuration file are built as
follows:

InitRef = NameService=corbaname::<hostname>:<port>

The name server port is the port given as an argument to the -start option of omniNames.
You also need to update your LD LIBRARY PATH to point to <install dir>/lib. So your LD
LIBRARY PATH environment variable should now be :
LD LIBRARY PATH=<omniORB home>/lib:<install dir>/lib.

NB1: In order to avoid name collision, every agent must be assigned a different name
in the name server; since they don’t have any children, SeDs do not need names assigned
to them and they don’t register with the name server.

NB2: Each Diet hierarchy can use a different name server, or multiple hierarchies
can share one name server (assuming all agents are assigned unique names). In a
multi-MA environment, in order for multiple hierarchies to be able to cooperate it is
necessary that they all share the same name server.

OPTIONS


config_file
Configuration file used by the agent to launch the DIET entity

DIET CONFIGURATION FILE


Every DIET entity requires a configuration file.

Please note that:

· comments start with ’#’ and finish at the end of the current line,

· meaningful lines have the format: keyword = value, following the format of configuration
files for omniORB 4,

· for options that accept 0 or 1, 0 means no and 1 means yes, and

· keywords are case sensitive.

Depending on the type of DIET element, different kinds of keyword could be found. Here
is a list of the possible keywords for a DIET Agent configuration file:

traceLevel
Integer value corresponding to the traceLevel for the DIET agent:

· 0: DIET do not print anything.

· 1: DIET prints only warnings and errors on the standard error output.

· 2: [default] DIET prints information on the main steps of a call.

· 5: DIET prints information on all internal steps too.

· 10: DIET prints all the communication structures too.

· >10: (traceLevel - 10) is given to the ORB to print CORBA messages too.

0 Diet do not print anything, – 1 Diet prints only warnings and errors on the
standard error output, – 2 [default] Diet prints information on the main steps of a
call, – 5 Diet prints information on all internal steps too, – 10 Diet prints all
the communication structures too, – > 10 (traceLevel - 10) is given to the ORB to
print CORBA messages too.

agentType
three possible values

· DIET MASTER AGENT (or MA) for a Master Agent

· DIET LOCAL AGENT (or LA) for a Local Agent

· DIET_MA_DAG for an MA DAG Agent

dietPort
Integer setting the listening port of the agent. If left empty, the ORB will get an
open port from the system (if default 2809 is busy).

dietHostName
String setting the listening interface of the agent. If left empty, the ORB will
use the system hostname (the first one if several are available).

name String identifying the element. Clients and children nodes (LAs and SeDs) must
point to the same CORBA Naming Service hosting the MA.

parentName
String identifying the parent agent.

[Remark: Only DIET Local Agents could use the parentName keyword]

fastUse
Boolean enabling/disabling FAST module. If set to 0, all LDAP and NWS parameters
are ignored, and all requests to FAST are disabled (when Diet is compiled with
FAST). This is useful while testing a DIET platform without having to deploy an
LDAP base nor an NWS platform.

[Remark: DIET must be compiled with FAST]

ldapUse
Boolean enabling/disabling LDAP support.

[Remark: DIET must be compiled with FAST]

ldapBase
String representing the LDAP base storing FAST-known services address in the form
host:port .

[Remark: DIET must be compiled with FAST]

ldapMask
String specifying the mask registered in the LDAP base.

[Remark: DIET must be compiled with FAST]

nwsUse Boolean enabling/disabling NWS support.

[Remark: DIET must be compiled with FAST]

nwsNameserver
String representing the NWS naming service address in the form host:port .

[Remark: DIET must be compiled with FAST]

nwsForecaster
String representing the NWS forecast module used by FAST.

[Remark: DIET must be compiled with FAST]

useLogService
Boolean enabling/disabling the LogService for monitoring purposes.

lsOutbuffersize
Integer setting outgoing messages buffer size.

lsFlushinterval
Integer setting the flush interval for the outgoing messages buffer.

neighbours
String listing MA that must be conntacted to build a federation. It is formatted as
a white-space separated list of addresses in the form host:port.

[Remark: DIET must be compiled with the Multi-MA option]

minimumNeighbours
Integer setting the minimum connected neighbours. If the agent has less connected
neighbours, it will try establishing new connections.

[Remark: DIET must be compiled with the Multi-MA option]

maximumNeighbours
Integer setting the maximum connected neighbours. Further, the agent will refuse
newer connections.

[Remark: DIET must be compiled with the Multi-MA option]

updateLinkPeriod
Integer setting the period (in seconds) at which the agent will check its
neighbours status and will try establishing new connections if their numbers is
less than minimumNeighbours.

[Remark: DIET must be compiled with the Multi-MA option]

bindServicePort
Integer defining the port used by the MA to share its IOR.

[Remark: Option used only by MAs]

useConcJobLimit
Boolean enabling/disabling the SeD restriction about concurrent solves. This
should be used in conjunction with maxConcJobs.

[Remark: Option used only by SeDs]

maxConcJobs
Integer setting the maximum number of jobs running at once. This should be used in
conjunction with maxConcJobs.

[Remark: Option used only by SeDs]

locationID
String used for alternative transfer cost prediction in Dagda.

[Remark: Option used only by SeDs]

MADAGNAME
String corresponding to the name of the MADAG agent.

[Remark: DIET must be compiled with the workflow option]

[Remark: Option used only by clients]

schedulerModule
Path to the sheduler library module containing the scheduler implementation.

[Remark: DIET must be compiled with the User Scheduling option]

[Remark: Option used only by agents]

moduleConfigFile
String corresponding to an optional configuration file for the module.

[Remark: DIET must be compiled with the User Scheduling option]

[Remark: Option used only by agents]

batchName
String corresponding to the name of the queue where the job will be submitted.

[Remark: DIET must be compiled with the Batch option]

[Remark: Option used only by SeDs]

pathToNFS
Path to the NFS directory where you have read/write permissions.

[Remark: DIET must be compiled with the Batch option]

[Remark: Option used only by SeDs]

pathToTmp
Path to the temporary directory where you have read/write permissions.

[Remark: DIET must be compiled with the Batch option]

[Remark: Option used only by SeDs]

internOARbatchQueueName
String only useful when using CORI batch features with OAR 1.6

[Remark: DIET must be compiled with the Batch option]

[Remark: Option used only by SeDs]

initRequestID
Integer setting the MA Request ID starting value.

[Remark: Option used only by MAs]

ackFile
Path to a file that will be created when the element is ready to execute.

[Remark: DIET must be compiled with the Acknowledge File option]

[Remark: Option used only by Agents and SeDs]

maxMsgSize
Integer setting the maximum size of CORBA messages sent by Dagda. By default, it's
the same as the omniORB giopMaxMsgSize size.

maxDiskSpace
Integer setting maximum disk space available to Dagda for storingt data. When set
to 0, Dagda will ignore any disk quota. By default, it's the same value as
available disk space on the partition set by storageDirectory.

maxMemSpace
Integer setting the maximum memory available to Dagda. When set to 0, Dagda will
ignore any memory usage limitation. By default, no limitations.

cacheAlgorithm
String defining the cache replacement algorithm used when Dagda needs more memory
for storing a piece of data. Possible values are: LRU, LFU, FIFO. By default, no
cache replacement algorithm, Dagda never overwrite data.

shareFiles
Boolean enabling/disabling Dagda file sharing with its children. Requires that the
path is accessible by the children (ie: NFS partition shared by parent and
children). By default, no file sharing.

dataBackupFile
Path to the backup file used by Dagda on user request (checkpointing). By default,
no checkpointing is disabled.

[Remark: Option used by Agents and ServerDaemon]

restoreOnStart
Boolean defining if Dagda have to load the file set by dataBackupFile at startup
and restore all data recorded during the last checkpointing event. Disabled by
default.

[Remark: Option used by agents and SeDs]

storageDirectory
String defining the directory where Dagda will store data files. By default /tmp
is used.

USE SPECIFIC SCHEDULING


Specific options setting scheduler policy used by the client whenever it submits a
request:

· BURST REQUEST: round robin on the available SeD

· BURST LIMIT: only allow a certain number of request per SeD in parallel the limit can
be set with "void setAllowedReqPerSeD(unsigned ix)"

[Remark: DIET must be compiled with the Custom Client Scheduling (CCS) option]

[Remark: Option used by clients]

clientMaxNbSeD:
Integer value representing the maximum number of SeD the client should receive.

[Remark: Option used by clients]

ENVIRONMENT


DIET needs some variables to be defined in order for the agent to be able to find all the
mandatory library and the CORBA naming service.

LD_LIBRARY_PATH
This environment variable must contain the path to the omniORB libraries

OMNIORB CONFIG
Path to the CORBA configuration file where the reference to the omniORB naming
service is written.

EXAMPLES


Here are examples of configuration file for the Master Agent or Local Agents.

· Configuration file for the Master Agent:

# file MA example.cfg, configuration file for an MA
agentType = DIET_MASTER_AGENT
name = MA
#traceLevel = 2 # default
#dietPort = <port> # not needed
#dietHostname = <hostname|IP>
useLogService = 0 # default
lsOutbuffersize = 0 # default
lsFlushinterval = 10000 # default

· Configuration file for the Local Agent

# file LA example.cfg, configuration file for an LA
agentType = DIET_LOCAL_AGENT
name = LA
useLogService = 0 # default
lsOutbuffersize = 0 # default
lsFlushinterval = 10000 # default

REPORTING BUGS


If you find that software interesting, or if you find a bug, please send us a mail: <‐
[email protected]> with the description of the problem, the version of the program
and/or any information that could help us fixing it.

Use dietAgent online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Zabbix
    Zabbix
    Zabbix is an enterprise-class open
    source distributed monitoring solution
    designed to monitor and track
    performance and availability of network
    servers, device...
    Download Zabbix
  • 2
    KDiff3
    KDiff3
    This repository is no longer maintained
    and is kept for archival purposes. See
    https://invent.kde.org/sdk/kdiff3 for
    the newest code and
    https://download.kde.o...
    Download KDiff3
  • 3
    USBLoaderGX
    USBLoaderGX
    USBLoaderGX is a GUI for
    Waninkoko's USB Loader, based on
    libwiigui. It allows listing and
    launching Wii games, Gamecube games and
    homebrew on Wii and WiiU...
    Download USBLoaderGX
  • 4
    Firebird
    Firebird
    Firebird RDBMS offers ANSI SQL features
    & runs on Linux, Windows &
    several Unix platforms. Features
    excellent concurrency & performance
    & power...
    Download Firebird
  • 5
    KompoZer
    KompoZer
    KompoZer is a wysiwyg HTML editor using
    the Mozilla Composer codebase. As
    Nvu's development has been stopped
    in 2005, KompoZer fixes many bugs and
    adds a f...
    Download KompoZer
  • 6
    Free Manga Downloader
    Free Manga Downloader
    The Free Manga Downloader (FMD) is an
    open source application written in
    Object-Pascal for managing and
    downloading manga from various websites.
    This is a mirr...
    Download Free Manga Downloader
  • More »

Linux commands

Ad