Scientific Workflows Shahbaz Memon 1,2 , Dorothee Vallot 3 , Helmut Neukirchen 2 , Morris Riedel 1,2 1 Jülich Supercomputing Centre, Germany 2 University of Iceland, Iceland 3 Uppsala University, Sweden
Outline • Part 1 – Automated Glacier Modeling through Scientific Workflows • Part 2 – Tutorial: Workflows
Part 1 Automated Glacier Modeling through Scientific Workflows
Motivation • Analysis pipelines – output of one as input for next job • Iterative execution – Until certain threshold • Agglomerative and shared output data • Nested loop/control constructs (if-else, while, for) to any depth • Easy to use GUI for scientists
Use Case: Kronebreen, Svalbard • Seasonal evolution of basal sliding – Inverse modelling of the surface velocity, observed for every 11 days for 3 years – Implementation of different sliding laws
Ice flow: Movement of the ice • Deformation of ice – Fracture (crevasses) – Internal deformation or creep • Basal sliding Photo: D. Vallot Velocity profile Can be modelled as a Internal continuous process deformation GLACIER Sliding BED 24 August, 2017 Dorothée Vallot 6
Elmer/Ice package • Elmer: Open Source Finite Element Software for Multiphysical Problems • Elmer/ICE: Additional routines for glaciology applications (i.e. Glen’s flow law) • Finite Element Method • Parallel processing 24 August, 2017 Dorothée Vallot 7
Calving process Accumulation Ablation ? Calving occurs when tensile stresses are Can be modelled as a discrete process large enough to propagate fractures through the ice 24 August, 2017 Dorothée Vallot 8
Helsinki Discrete Element Model (HiDEM) for ice • Numerical particle-based model of calving (Åström et al., 2013) from 2D to 3D • Glacier divided into discrete particles Water ICE WATE depth R 24 August, 2017 Dorothée Vallot 9
Coupling of Elmer/ICE and HiDEM • Input to Elmer/ICE – Surface and bed DEM – Front position (contour) • Output of Elmer/ICE as an input to HiDEM – Basal friction – Surface elevation • Output to HiDEM – Front position (contour)
Workflow Model Shared Serial Preprocessing Generate Mesh Serial Parallel ElmerSolver Cluster 1 Elmer-> Particle Serial Loop Until Num. Main script Observations Parallel Particle Calving Cluster 2 Particle-> Elmer Serial
Common Workflow Issues • Portability on different target resources and batch systems • Script adoption to separate execution environment • Manual data import and export – e.g. job outputs • Manual job dependency tracking • Boiler plate code: A mix of job, data, and application management in one script • Single User rather than for community
UNICORE: Workflow Middleware • A set of integrated computing and storage interfaces – Open source – Workflow support – Standards-based, BSD licence – Seamless, secure, and intuitive – Supporting various batch systems: LoadLeveler, SLURM, Torque – Mature security for distributed research infrastructures and supercomputing deployments – Application integration – Platform independent: Implemented in JAVA and Python
UNICORE Architecture
Workflow Features • Simple graphs • Workflow Variables • Loops and Control – For-each, while.. • Condition – Exit code, file existence, file size • Clients – UNICORE Rich Client – Commandline Client
UNICORE Rich Client • Building, submitting and monitoring jobs and workflows • Integrated data and storage management • Pluggable credentials • “Simple view “ for novice users • Based on the Eclipse framework
Workflow Model Shared Serial Preprocessing Generate Mesh Serial Parallel ElmerSolver Elmer-> Particle Serial Loop Until Num. Main script Observations Parallel Particle Calving Particle-> Elmer Serial
Workflow Realization In UNICORE Shared variables Prepare shared 1 Shared input and output Preprocessing directory Serial Generate Mesh Generate 2 through gmsh and Mesh ElmerGrid 1 Serial Parallel Elmer run and 3 ElmerSolver prepare output for calving Loop Until Num. Observations Elmer-> Data Conversion 4 Elmer -> Particle Particle Serial Particle calving 5 Parallel 2 3 and convert output 4 Particle Calving for the Elmer run 6 5 Particle-> Data Conversion 6 Elmer Serial Particle -> Elmer
Demo: UNICORE Rich Client https://www.youtube.com/watch?v=phcV8jeBT8s
Conclusion and Outlook • Proof of concept: deployed on a single virtual machine ( 20 cores, 20 GB RAM) • An initial effort required to develop the first template, which can be reused by many users • Next steps – Ready to be deployed on CSC (Finland) resources – Further evaluation and publish results
Part 2 Tutorial: UNICORE Workflows
Resources Involved • Sisu – CSC, Finland – Cray XC40, 1688 Nodes, 3376 Procs, 64G/Node • Taito – CSC, Finland – HP, 929 Nodes – Combination of Sandy Bridge and Haswell Nodes • JURECA – JSC, Germany – 1872 Nodes, 128/256/512 G / Node • Cloud VM – Ubuntu 12.04 LTS – JSC Germany
Scenarios 1) Run a simple, single-site script job 2) Implement a multi-site, - sequential workflow - an iterative workflow
Recommend
More recommend