Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

ecFlow submits tasks (jobs) and receives acknowledgments from the tasks when they change status and when they send events, using child commands embedded in your scripts. ecFlow stores the relationships between tasks, and is able to submit tasks dependant on triggers, such as when a given task changes its status, for example when it finishes. Users communicate with ecFlow server using: 

ecFlow functionality is provided by the following executables and shared libraries

  • ecflow_client: This executable is a command line program; it is used for all communication with the server. This executable implements the Command Level Interface (CLI). Python interfaceThe bulk of this functionality is also provided by the python API
  • ecflow_ui. (QT based GUI): This is a specialised GUI client that monitors and visualises the node tree hierarchy. Based on QT.
  • ecflow_server: This executable is the server. It is responsible for scheduling the jobs and responding to ecflow_client requests.
  • ecflow.so: These shared libraries provide the python API for creating the suite definition and communication with the server.
  • Python interface

ecFlow runs as a server receiving requests from clients. CLI, GUI and the suite jobs are the clients. Communication is based on TCP/IP. Note that ecFlow is a scheduler and is not a queuing system such as NQS, SGE, Load leveller or PBS. However, it can submit to queuing systems.

...