• No results found

Using Cloud Technologies for Bioinformatics Applications

N/A
N/A
Protected

Academic year: 2020

Share "Using Cloud Technologies for Bioinformatics Applications"

Copied!
30
0
0

Loading.... (view fulltext now)

Full text

(1)

SALSA SALSA

Using Cloud Technologies for

Bioinformatics Applications

MTAGS Workshop SC09

Portland Oregon November 16 2009

Judy Qiu

[email protected] www.infomall.org/salsa

Community Grids Laboratory Pervasive Technology Institute

(2)

SALSA

Collaborators in

S

A

L

S

A

Project

Indiana University

SALSATechnology Team

Geoffrey Fox Judy Qiu Scott Beason Jaliya Ekanayake Thilina Gunarathne Thilina Gunarathne

Jong Youl Choi Yang Ruan Seung-Hee Bae Hui Li Saliya Ekanayake

Microsoft Research

Technology Collaboration Azure (Clouds) Dennis Gannon Roger Barga

Dryad (Parallel Runtime) Christophe Poulain

CCR (Threading)

George Chrysanthakopoulos DSS (Services)

Henrik Frystyk Nielsen

Applications

Bioinformatics, CGB Haixu Tang, Mina Rho,

Peter Cherbas, Qunfeng Dong IU Medical School

Gilbert Liu

Demographics (Polis Center) Neil Devadasan

Cheminformatics

David Wild, Qian Zhu Physics

CMS group at Caltech (Julian Bunn)

(3)

SALSA

Convergence is Happening

Multicore

Clouds

Data Intensive Paradigms

Data intensive application (three basic activities): capture, curation, and analysis (visualization)

Cloud infrastructure and runtime

(4)

SALSA

MapReduce “File/Data Repository” Parallelism

Instruments

Disks

Computers/Disks

Map1 Map2 Map3 Reduce

Communication via Messages/Files

Map = (data parallel) computation reading and writing data Reduce = Collective/Consolidation phase e.g. forming multiple global sums as in histogram

(5)

SALSA

Cluster Configurations

Feature

GCB-K18 @ MSR iDataplex @ IU

Tempest @ IU

CPU Intel Xeon

CPU L5420 2.50GHz

Intel Xeon CPU L5420 2.50GHz

Intel Xeon CPU E7450 2.40GHz # CPU /# Cores per

node 2 / 8 2 / 8 4 / 24

Memory 16 GB 32GB 48GB

# Disks 2 1 2

Network Giga bit Ethernet Giga bit Ethernet Giga bit Ethernet / 20 Gbps Infiniband Operating System Windows Server

Enterprise - 64 bit Red Hat EnterpriseLinux Server -64 bit Windows ServerEnterprise - 64 bit

# Nodes Used 32 32 32

Total CPU Cores Used 256 256 768

(6)

SALSA

Dynamic Virtual Cluster provisioning via XCAT

Supports both stateful and stateless OS images

iDataplex Bare-metal Nodes Linux

Bare-system

Linux Virtual

Machines Windows Server2008 HPC

Bare-system Xen Virtualization Microsoft DryadLINQ / MPI Apache Hadoop / MapReduce++ /

MPI

Smith Waterman Dissimilarities, CAP-3 Gene Assembly, PhyloD Using DryadLINQ, High Energy Physics, Clustering, Multidimensional Scaling,

Generative Topological Mapping

XCAT Infrastructure Xen Virtualization Applications Runtimes Infrastructure software Hardware Windows Server 2008 HPC

(7)

SALSA

Cloud Computing: Infrastructure and Runtimes

Cloud infrastructure:

outsourcing of servers, computing, data, file

space, etc.

Handled through Web services that control virtual machine

lifecycles.

Cloud runtimes:

tools (for using clouds) to do data-parallel

computations.

Apache Hadoop, Google MapReduce, Microsoft Dryad, and others

Designed for information retrieval but are excellent for a wide

range of

science data analysis applications

Can also do much traditional parallel computing for data-mining if

extended to support

iterative

operations

(8)

SALSA

Alu and Sequencing Workflow

Data is a collection of N sequences – 100’s of characters long

These cannot be thought of as vectors because there are missing characters

“Multiple Sequence Alignment” (creating vectors of characters) doesn’t seem

to work if N larger than O(100)

Can calculate N

2

dissimilarities (distances) between sequences (all pairs)

Find families by clustering (much better methods than Kmeans). As no vectors, use

vector free O(N

2

) methods

Map to 3D for visualization using Multidimensional Scaling MDS – also O(N

2

)

N = 50,000 runs in 10 hours (all above) on 768 cores

Our collaborators just gave us 170,000 sequences and want to look at 1.5 million –

will develop new algorithms!

(9)

SALSA

Pairwise Distances – ALU Sequences

Calculate pairwise distances for a collection

of genes (used for clustering, MDS)

O(N^2) problem

“Doubly Data Parallel” at Dryad Stage

Performance close to MPI

Performed on 768 cores (Tempest Cluster)

35339 50000 0 2000 4000 6000 8000 10000 12000 14000 16000 18000 20000 DryadLINQ MPI 125 million distances 4 hours & 46

minutes

Processes work better than threads

when used inside vertices

(10)
(11)
(12)

SALSA

(13)

SALSA

1 2 4 4 4 8 8 8 8 8 8 8 16 16 16 16 16 24 32 32 48 48 48 48 48 64 64 64 64 96 96 128 128 192 288 384 384 480 576 672 744

-1 0 1 2 3 4 5 6 MPI MPI MPI

Parallel Overhead

Thread Thread Thread

Parallelism

Clustering by Deterministic Annealing

Thread Thread Thread MPI Thread

Pairwise Clustering

(14)

SALSA

Dryad versus MPI for Smith Waterman

(15)

SALSA

Hadoop/Dryad Comparison

“Homogeneous” Data

Dryad with Windows HPCS compared to Hadoop with Linux RHEL on Idataplex Using real data with standard deviation/length = 0.1

Number of Sequences

30000 35000 40000 45000 50000 55000 0

0.002 0.004 0.006 0.008 0.01 0.012

Ti

me

per

Al

ign

men

t(ms

) Dryad

(16)

SALSA

Hadoop/Dryad Comparison Inhomogeneous Data I

Dryad with Windows HPCS compared to Hadoop with Linux RHEL on Idataplex (32 nodes) Standard Deviation

0 50 100 150 200 250 300

Ti

me

(s)

1500 1550 1600 1650 1700 1750 1800 1850 1900

Randomly Distributed Inhomogeneous Data

Mean: 400, Dataset Size: 10000

DryadLinq SWG Hadoop SWG Hadoop SWG on VM

(17)

SALSA

Hadoop/Dryad Comparison Inhomogeneous Data II

Dryad with Windows HPCS compared to Hadoop with Linux RHEL on Idataplex (32 nodes) Standard Deviation

0 50 100 150 200 250 300

To

ta

lTi

me

(s)

0 1,000 2,000 3,000 4,000 5,000 6,000

Skewed Distributed Inhomogeneous data

Mean: 400, Dataset Size: 10000

DryadLinq SWG Hadoop SWG Hadoop SWG on VM

(18)

SALSA

Hadoop VM Performance Degradation

15.3% Degradation at largest data set size

0% 5% 10% 15% 20% 25% 30% 35%

No. of Sequences

10000 20000 30000 40000 50000

Perf. Degradation On VM (Hadoop)

(19)

SALSA

PhyloD using Azure and DryadLINQ

(20)
(21)

SALSA

Efficiency vs.

number

of worker

roles in PhyloD prototype run on

Azure March CTP

Number of active Azure

workers during a run of PhyloD

application

(22)

SALSA

Iterative Computations

K-means MultiplicationMatrix

(23)

SALSA

Kmeans Clustering

Iteratively refining operation

New maps/reducers/vertices in every iteration

File system based communication

Loop unrolling in DryadLINQ provide better performance

The overheads are extremely large compared to MPI

CGL-MapReduce is an example of MapReduce++ -- supports

MapReduce model with iteration (data stays in memory and

communication via streams not files)

Time for 20 iterations

Large

(24)

SALSA

MapReduce++ (CGL-MapReduce)

Streaming based communication

Intermediate results are directly transferred from the map tasks to

the reduce tasks –

eliminates local files

Cacheable map/reduce tasks - Static data remains in memory

Combine phase to combine reductions

User Program is the

composer

of MapReduce computations

Extends the MapReduce model to iterative computations

Data Split

D

MR

Driver

Program

User

Pub/Sub Broker Network

D

File System

M

R

M

R

R

M

M

R

(25)

SALSA

SALSA HPC

Dynamic Virtual Cluster Hosting

iDataplex Bare-metal Nodes (32 nodes) XCAT Infrastructure

Linux

Bare-system Linux onXen

Windows Server 2008

Bare-system

Cluster Switching from Linux Bare-system to Xen VMs to Windows 2008

HPC SW-G Using

Hadoop

SW-G : Smith Waterman Gotoh Dissimilarity Computation

– A typical MapReduce style application

SW-G Using Hadoop

SW-G Using

DryadLINQ SW-G UsingHadoop

(26)

SALSA

Monitoring Infrastructure

Pub/Sub Broker Network

Summarizer

Switcher

Monitoring Interface

iDataplex Bare-metal Nodes (32 nodes)

(27)

SALSA

(28)

SALSA

Application Classes

(Parallel software/hardware in terms of 5 “Application architecture” Structures)

1 Synchronous Lockstep Operation as in SIMD architectures

2 Loosely

Synchronous Iterative Compute-Communication stages withindependent compute (map) operations for each CPU.

Heart of most MPI jobs

3 Asynchronous Compute Chess; Combinatorial Search often supported by dynamic threads

4 Pleasingly Parallel Each component independent – in 1988, Fox estimated

at 20% of total number of applications Grids

5 Metaproblems Coarse grain (asynchronous) combinations of classes

1)-4). The preserve of workflow. Grids

6 MapReduce++ It describes file(database) to file(database) operations which has three subcategories.

1) Pleasingly Parallel Map Only 2) Map followed by reductions

3) Iterative “Map followed by reductions” – Extension of Current Technologies that

supports much linear algebra and datamining

(29)

SALSA

Applications & Different Interconnection Patterns

Map Only Classic

MapReduce Ite rative ReductionsMapReduce++ Loosely Synchronous

CAP3Analysis

Document conversion (PDF -> HTML)

Brute force searches in cryptography

Parametric sweeps

High Energy Physics (HEP) Histograms SWG gene alignment Distributed search Distributed sorting Information retrieval Expectation maximization algorithms Clustering Linear Algebra

Many MPI scientific applications utilizing wide variety of

communication constructs including local interactions - CAP3 Gene Assembly

- PolarGrid Matlab data analysis

Information Retrieval -HEP Data Analysis

- Calculation of Pairwise Distances for ALU

Sequences - Kmeans - Deterministic Annealing Clustering - Multidimensional ScalingMDS

- Solving Differential Equations and

- particle dynamics with short range forces

Input Output map Input map reduce Input map reduce iterations Pij

(30)

SALSA

Summary: Key Features of our Approach II

Dryad/Hadoop/Azure promising for Biology computations

Dynamic Virtual Clusters allow one to switch between

different modes

Overhead of VM’s on Hadoop (15%) acceptable

Inhomogeneous problems currently favors Hadoop over

Dryad

References

Related documents

Critical Timeframe Now Hardware Virtualization Network Virtualization Server Virtualization Storage Virtualization Applications Infrastructure Dimensions of Virtualization

(c) At least 10 years‟ experience in Educational Institutions including at least 7 years‟ teaching experience at Senior Secondary or Higher level in recognized

None of the prior research considers integrative trust-based functional contracting could be a powerful contractual approach which could be used to complement EPC

Despite the introduction of this precursor in the sol-gel structure both impedance module and phase angle maintain a similar shape to the plot obtained for the 50M50G material, so

independence through aging out of care while at the same time engaging in activities that fostered dependence on the state (through qualifying for SSI and food stamps), became

Private (On‐Premise) Private (On‐Premise) Storage Server HW Networking Servers Databases Virtualization Runtimes Applications Security & Integration Yo u  manag e

The various components (RFID tag and reader, ATmega 32 micro-controller, liquid crystal display module, DC motor, buzzer alarm, relay, keypad, 240/15V transformer, voltage

RAID 1 for operating system and applications (2 disks) Network Card 1GB Ethernet Virtual Environments Hardware Virtualization Windows Server 2012 Hyper-V Windows Server