distributed computing with triana a short course matthew shields, ian taylor & ian wang
TRANSCRIPT
Distributed Computing With Triana
A Short Course
Matthew Shields, Ian Taylor & Ian Wang
Course Outline
IntroductionHistory and Overview
Tools and Toolboxes, Components and Groups
How to compose a workflow
Triana as a workflow editor
Course Outline cont.
Service-oriented ComponentsWeb services as components
Web service workflow
Peer 2 Peer services as components
Distributed service workflow
Grid-oriented ComponentsGrid file and job primitives as components
Complex Grid workflow
Install Triana
Unpack the triana.tar.gz to a location of your choiceSet env $TRIANA (Unix) or %TRIANA% (Windows) to the unpacked directoryRun $TRIANA/bin/triana (Unix) or %TRIANA/bin/triana.bat (Windows)Course website http://www.trianacode.org/shortcourse/
About Triana
Distributed Problem Solving EnvironmentWorkflow Based
Multiple Component DomainsSignal Processing (original domain)
Image Processing
Text Processing
Audio
Composite Components
Research Scope
Triana is currently funded through 2 main research projects:
GridOneD: to investigate P2P and integrating visual distributed programming for Gravitational Wave applications
GridLab: one of the 2 project applications (other is Cactus) used to shape the Grid Application Toolkit (GAT)
Components and Definitions
Component is unit of executionComponents are defined in XML files:
Naming informationInput and output portsParameter information
Why Components?To simplify the application design process and to speed up application development
Triana Workflow
Triana is inherently flow basedData flow - data arriving at component triggers execution
Control flow - control commands trigger execution
Decentralised executionData or Control messages sent along communication “pipes” from sender to receiver causes receiver to execute
Synchronous or Asynchronous messaging (Implementation dependant)
Multiple inputs can block or trigger immediately (Component designer defined)
Taskgraph
Internal object based workflow graph representation
Taskgraph - DAGTasksConnections
External XML representationSimple XML syntaxList of participating Task definitionsParent/Child connectionHierarchical (Compound components)
Simple Workflow Example
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
Example Continued
Image is converted to Grey scale and then thresholded (set image less than 136 to black and everything higher to white).difference is then taken between this image and a image where the white lines are thinned out (i.e. detail is taken away).The resulting image is basically the detail of the white parts which were pruned by the ShrinkWhite unit which gives an outline of an image.Group the unit and save it as a new compound component
Coalescing Binary Search
GEO 600 Coalescing
Binary Search Algorithm
implemented as a Triana workflow
Triana Pluggable Architecture
Application’s Insert Points
Triana TaskGraph
Writer
Triana Command
Writer
XML Writer
Other Writer
TComWriter
OtherWriter
Triana TaskGraph
Reader
Triana Command
Reader
XML Reader
WSFL Reader
TComReader
OtherReader
Interactive Interactive/Offline Communication Channels
TrianaEngine
Command ServiceControl
Plug-in Applications- flexible: apps can use Triana in various ways, as a:
- GUI - remote control GUI- or in full inc. GAP/GAT
3rd Party Application
3rd Party Application
VDT Reader and Writer