Presentation is loading. Please wait.

Presentation is loading. Please wait.

G. Alonso, W. Bausch, C. Pautasso Information and Communication Systems Research Group Department of Computer Science Swiss Federal Institute of Technology,

Similar presentations


Presentation on theme: "G. Alonso, W. Bausch, C. Pautasso Information and Communication Systems Research Group Department of Computer Science Swiss Federal Institute of Technology,"— Presentation transcript:

1

2 G. Alonso, W. Bausch, C. Pautasso Information and Communication Systems Research Group Department of Computer Science Swiss Federal Institute of Technology, Zurich (ETHZ)

3 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.2 Who are we? Information and Communication Research Group. Our expertise:  High performance, high availability systems (e.g., data replication, backup architectures, parallel data processing)  Information systems architecture (mainframe or cluster based)  Large data repositories (e.g., HEDC data warehouse for the HESSI satellite)  Large distributed systems (e.g., enterprise middleware, workflow, internet electronic commerce) Our interests:  System architectures for applications with unconventional requirements  performance: cluster computing and parallel processing  availability: long term fault tolerance, hot backups  communications: ubiquitous computing, mobile ad-hoc networks, internet

4 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.3 What do we do? Until recently, our work has been in the area of high performance/cluster/parallel computing in the IT world  high performance transaction processing systems (throughput, availability)  very large data repositories (scalability, evolution)  data processing applications (large scale data mining) In the last years we have started several projects in scientific applications:  HEDC: a multi-terabyte data repository for NASA with the capability to store and process astrophysics data; data production rate is 1 GB per day (raw); data goes on line 24 hours after delivery from the satellite, fully preprocessed, cleaned, catalogued, indexed, with relevant events identified (solar flares, gamma ray bursts, non solar events, etc.), and an extended catalogue of analyses for the events of interest. Users can browse, produce more analyses, request batch processing jobs, perform low resolution analyses, retrieve and store data, etc.  BioOpera: a process based development and run time environment for parallel computations over computer clusters for bio-informatic applications

5 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.4 Cluster computing Question: “Will cluster computing penetrate the IT market?” (next talk …) Our answer: it did a long time ago but we do not benchmark our clusters in terms of Gflops and there is no Top500 list. Examples:  eBay: cluster of several hundred nodes for high performance transaction processing, fully duplicated for availability purposes  Google: several thousand nodes used for parallel data processing (4 weeks to retrieve, sort, classify, index and store the entire contents of the web)  TPC-C results Compaq ProLiant 8500-700-192P Server: 24 nodes (8 x Pentium III Xeon 700MHz, 8 GB RAM) Clients: 48 nodes (2 x Pentium III 800 Mhz, 521 MB RAM) Disks: > 2500 SCSI Drives Total storage capacity: > 42 TB

6 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.5 Grid computing Similarly, we have an IT version of (data or computing) grids: virtual business processes Virtual Enterprise Process WWW Catalogue Enterprise X Activity, behavior, price Enterprise Y Activity, behavior, price... Posting Trading Community IvyFrame Definition WISE Engine Persistence Security Q 0f S Exec. Guarantees Availability Awareness Model Enactment Compilation

7 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.6 Complex computing environments

8 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.7 High level components Code-Granularity Large grain (application level) Program Medium grain (operating system level) Function (thread or process) Fine grain (compiler level) Loops Very fine grain (instruction level) With hardware Task i-lTask i+1 func1 ( ) {.... } func2 ( ) {.... } func3 ( ) {.... } a ( 0 ) =.. b ( 0 ) =.. a ( 1 )=.. b ( 1 )=.. a ( 2 )=.. b ( 2 )=.. + x Load Tasks Threads/ Processes Compilers CPU Task i

9 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.8 Process Management Systems Processes are the way to build distributed computations over clusters Process  Description of resources (programs, applications, data), specification of control and data flow Process Management System  Management of distributed resources (scheduling, load balancing, parallelism, data transfer, etc.). An operating system at a coarse granularity? The use of databases reduces by about 50 % the code of large applications. Processes can do the same for large scale, distributed, systems based on heterogeneous components.

10 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.9 Workflow Services Modelling Scheduling Fault tolerance Dist. Services Ext. Applications Load balancing Process migration Advanced Services Atomicity Recovery  Kernel based system instead of complete application  Which functionality needs to be implemented in the kernel and which functionality is application specific is an open research area. Open Process Engine for Reliable Activities OPERAOPERA Persistence Logging Query interfaces Expanded Services Exception handling Event Services Opera

11 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.10 OPERA KERNEL OPERAOPERA Open Process Engine for Reliable Activities Modeling and Compiler Interface for Data and Applications Metadata and Tools Application specific extensions

12 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.11 BioOpera TYPICAL COMPUTING ENVIRONMENTS IN BIO- INFORMATICS Multiple step complex computations over heterogeneous applications  algorithmic complexity (most of them NP-hard, NP- complete)  large input / output data sets (exponential is not uncommon)  complex data dependencies and control flow  long lived computations over unreliable platforms Current programming environments are very primitive:  support for single algorithms (complex computations put together by hand or very low level scripts)  it is difficult to specify, run, keep track and reproduce computations  no automated support, computations are manually maintained

13 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.12 Programming tool Monitoring tool BioOpera Process front-end Application front-end Data visualization Similarity search Lineage info Recovery info Awareness info Process output Bioinformatics Application DARWIN Process Enactment Process Monitoring System Awareness BioOpera: A Process Support System BIOPERA programming environment for multiple step computations over heterogeneous applications:  program invocations, control & data flow  parallelism (data, search space)  failure behaviour Run time environment for processes  navigation  distribution / load balancing  persistence / recovery Monitor and interaction tools  at process level  at task level  start, stop, resume, cancel, retry, modify parameters, etc.

14 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.13 Instance space Data space Data Layer Execution Layer Template space Config space Navigator Dispatcher recovery process interpreter schedulingdistribution load balancing Interface layer (remote) Execution client Load monitor Darwin Interface layer (local) Activity queue Process Support System Frontend BioOpera client BioOpera server Cluster on a LAN process spec. OCR Compiler translation BioOpera: Architecture

15 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.14 The All vs. All Problem: Compute a complete cross-comparison of the SwissProt v38 protein database SwissProt v38 80‘000 entries average seq. length: 400 residues A complete cross- comparison (using state of the art methods) runs 2 years (cpu time) on a single PC Currently, doing this in a much smaller scale takes several months (just updates) Task 1 User Input Task 2 Parallel PreProcessing Task 3 All vs. All Task 4 Merge Database, Output file Input Params Output Files Master Result Raw Ref Execution Unit n times

16 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.15 The All vs. All lifecycle 0 10 20 30 Dec 17Dec 18Dec 19Dec 20Dec 21Dec 22Dec 23Dec 24Dec 25Dec 26Dec 27Dec 28Dec 29Dec 30Dec 31 Jan 01Jan 02Jan 03Jan 04Jan 05Jan 06Jan 07Jan 08Jan 09Jan 10Jan 11Jan 12Jan 13Jan 14Jan 15Jan 16Jan 17Jan 18Jan 19Jan 20Jan 21 0 10 20 30 Number of processors Available processors Running jobs Succesful jobs Failed jobs Jobs on CPU Other user needs cluster Disk space shortage Cluster busy with other jobs Server down for maintenance Cluster failure All jobs manually killed

17 ©Gustavo Alonso. Information and Communication Systems Research Group. ETHZ.16 Conclusions BioOpera offers:  a better way to program complex computations over clusters,  persistent computations, recoverability,  monitoring and querying facilities,  a scalable architecture that can be applied both in clusters and in grids BioOpera is not:  a parallel programming language or a message passing library (too low level),  a scripting language (too inflexible),  a workflow tool (too oriented to human activities) BioOpera is extensible:  accepts different process programming models,  monitoring and querying facilities can be expanded and changed,  BioOpera servers can be combined to form clusters of clusters


Download ppt "G. Alonso, W. Bausch, C. Pautasso Information and Communication Systems Research Group Department of Computer Science Swiss Federal Institute of Technology,"

Similar presentations


Ads by Google