• No results found

Generalizing MapReduce as a Unified Cloud and HPC Runtime

N/A
N/A
Protected

Academic year: 2020

Share "Generalizing MapReduce as a Unified Cloud and HPC Runtime"

Copied!
44
0
0

Loading.... (view fulltext now)

Full text

(1)

S

A

L

S

A

HPC Group

http://salsahpc.indiana.edu

School of Informatics and Computing

Indiana University

(2)

Twister

Bingjing Zhang, Richard Teng

Twister4Azure

Thilina Gunarathne

High-Performance

Visualization Algorithms

For Data-Intensive Analysis

(3)

DryadLINQ CTP Evaluation

Hui Li, Yang Ruan, and Yuduo Zhou

Cloud Storage, FutureGrid

Xiaoming Gao, Stephen Wu

Million Sequence Challenge

Saliya Ekanayake, Adam Hughs, Yang Ruan

Cyberinfrastructure for

Remote Sensing of Ice Sheets

(4)

SALSA

(5)

SALSA

Linux HPC Bare-system

Amazon Cloud Windows Server HPC

Bare-system Virtualization

Cross Platform Iterative MapReduce (Collectives, Fault Tolerance, Scheduling) Kernels, Genomics, Proteomics, Information Retrieval, Polar Science,

Scientific Simulation Data Analysis and Management, Dissimilarity

Computation, Clustering, Multidimensional Scaling, Generative Topological Mapping CPU Nodes Virtualization Applications Programming Model Infrastructure Hardware Azure Cloud Security, Provenance, Portal

High Level Language

Distributed File Systems Data Parallel File System

Grid Appliance

GPU Nodes

Support Scientific Simulations (Data Mining and Data Analysis)

Runtime Storage

Services and Workflow

(6)
(7)

What are the challenges?

Providing both cost effectiveness and powerful parallel programming paradigms that is capable of handling the incredible increases in dataset sizes.

(large-scale data analysis for Data Intensive applications )

Research issues

§

portability between HPC and Cloud systems

§

scaling performance

§

fault tolerance

These challenges must be met for both computation and storage. If computation and storage are separated, it’s not possible to bring computing to data.

Data locality

§ its impact on performance;

§ the factors that affect data locality;

§ the maximum degree of data locality that can be achieved.

Factors beyond data locality to improve performance

To achieve the best data locality is not always the optimal scheduling decision. For instance, if the node where input data of a task are stored is overloaded, to run the task on it will result in performance degradation.

Task granularity and load balance

In MapReduce , task granularity is fixed. This mechanism has two drawbacks 1) limited degree of concurrency

(8)

8

Programming Models and Tools

8

MapReduce in Heterogeneous Environment

(9)

Motivation

Data

Deluge

MapReduce

Runtimes (MPI)

Classic Parallel

Experiencing in

many domains

Data Centered, QoS Efficient and

Proven techniques Input Output map Input map reduce Input map reduce iterations Pij

Expand the Applicability of MapReduce to more

classes

of Applications

(10)

Distinction on static and variable

data

Configurable long running

(cacheable) map/reduce tasks

Pub/sub messaging based

communication/data transfers

(11)

configureMaps(..) configureReduce(..)

runMapReduce(..) while(condition){

} //end while

updateCondition() close() Combine() operation Reduce() Map() Worker Nodes

Communications/data transfers via the pub-sub broker network & direct TCP

Iterations

May send <Key,Value> pairs directly

Local Disk

Cacheable map/reduce tasks

Main program may contain many

MapReduce invocations or iterative

MapReduce invocations

(12)

Worker Node Local Disk Worker Pool Twister Daemon Master Node Twister Driver Main Program B B B B Pub/sub Broker Network Worker Node Local Disk Worker Pool Twister Daemon Scripts perform:

Data distribution, data collection, andpartition file creation

map

reduce Cacheable tasks

(13)
(14)
(15)
(16)
(17)

Distributed, highly scalable and highly available cloud

services as the building blocks.

Utilize eventually-consistent , high-latency cloud services

effectively to deliver performance comparable to

traditional MapReduce runtimes.

Decentralized architecture with global queue based

dynamic task scheduling

Minimal management and maintenance overhead

Supports dynamically scaling up and down of the compute

resources.

(18)
(19)

Performance with/without

data caching Speedup gained using data cache

Scaling speedup Increasing number of iterations Number of Executing Map Task Histogram

Strong Scaling with 128M Data Points

(20)

Performance with/without

data caching Speedup gained using data cache

Scaling speedup Increasing number of iterations

Azure Instance Type Study Number of Executing Map Task Histogram

Weak Scaling Data Size Scaling

(21)

This demo is for real time visualization of the

process of multidimensional scaling(MDS)

calculation.

We use Twister to do parallel calculation inside the

cluster, and use PlotViz to show the intermediate

results at the user client computer.

(22)
(23)

Master Node Twister

Driver Twister-MDS

ActiveMQ

Broker MDS Monitor

PlotViz I. Send message to

start the job II. Send intermediate

results

(24)
(25)

Input

map

reduce

Iterations

Initial Collective Step Network of Brokers

Final Collective Step Network of Brokers

User Program

(26)

Twister Driver Node

Twister Daemon Node ActiveMQ Broker Node

Broker-Daemon Connection Broker-Broker Connection

Broker-Driver Connection

7 Brokers and 32 Computing Nodes in total

A. Full Mesh Network

B. Hierarchical Sending

C. Streaming

(27)

189.288 359.625 816.364 1508.487 148.805 303.432 737.073 1404.431

Number of Data Points

38400 51200 76800 102400

Total Execution Time (Seconds) 0.000 200.000 400.000 600.000 800.000 1000.000 1200.000 1400.000 1600.000

Twister-MDS Execution Time

100 iterations, 40 nodes, under different input data sizes

(28)

13.07 18.79 24.50 46.19 70.56 93.14

400M 600M 800M

Broadcasting Time (Unit: Second) 0.00 10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00 100.00

(29)

Twister New Architecture

Worker Node Twister Daemon Twister Driver Worker Node Twister Daemon map reduce merge Broker Map Reduce Master Node Configure Mapper

Add to MemCache

Broker Broker

Cacheable tasks map broadcasting chain

(30)

Chain/Ring Broadcasting

Twister Daemon Node

Twister Driver Node • Driver sender:

• send broadcasting data

• get acknowledgement

• send next broadcasting data

• …

• Daemon sender:

• receive data from the last daemon (or driver)

• cache data to daemon

• Send data to next daemon (waits for ACK)

(31)

Chain Broadcasting Protocol

send

get ack

send

Driver Daemon 0

receive handle data send Daemon 1 ack receive handle data send ack receive handle data get ack ack receive handle data get ack send send get ack Daemon 2 receive handle data ack receive handle data ack ack get ack get ack ack

ack get ack

I know this is the end of Daemon Chain

(32)

Broadcasting Time Comparison

Execution No.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50

Broadcasting

Time

(Unit:

Seconds)

0 5 10 15 20 25 30

Broadcasting Time Comparison on 80 nodes, 600 MB data, 160 pieces

(33)

SALSA

Applications & Different Interconnection Patterns

Map Only Classic

MapReduce Iterative ReductionsTwister 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

(34)

SALSA

Scheduling vs. Computation of Dryad in a

Heterogeneous Environment

(35)

SALSA

Runtime Issues

(36)

Development of

library of Collectives

to use at Reduce phase

Broadcast and Gather needed by current applications

Discover other important ones

Implement efficiently on each platform – especially Azure

Better

software message routing

with broker networks using

asynchronous I/O with communication fault tolerance

Support

nearby location of data and computing

using data

parallel file systems

Clearer application

fault tolerance

model based on implicit

synchronizations points at iteration end points

Later: Investigate

GPU

support

(37)

Convergence is Happening

Multicore

Clouds

Data Intensive Paradigms

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

Cloud infrastructure and runtime

(38)

SALSA

FutureGrid: a Grid Testbed

IU Cray operational, IU IBM (iDataPlex) completed stability test May 6

UCSD IBM operational, UF IBM stability test completes ~ May 12

Network, NID and PU HTC system operational

UC IBM stability test completes ~ May 27; TACC Dell awaiting delivery of components

NID: Network Impairment Device

Private

(39)

SALSA

• Switchable clusters on the same hardware (~5 minutes between different OS such as Linux+Xen to Windows+HPCS)

• Support for virtual clusters

• SW-G : Smith Waterman Gotoh Dissimilarity Computation as an pleasingly parallel problem suitable for MapReduce style applications Pub/Sub Broker Network Summarizer Switcher Monitoring Interface iDataplex Bare-metal Nodes XCAT Infrastructure Virtual/Physical Clusters

Monitoring & Control Infrastructure

iDataplex Bare-metal Nodes (32 nodes) XCAT Infrastructure Linux Bare-system Linux on Xen Windows Server 2008 Bare-system SW-G Using

Hadoop SW-G UsingHadoop SW-G UsingDryadLINQ

Monitoring Infrastructure

Dynamic Cluster Architecture

SALSAHPC Dynamic Virtual Cluster on

(40)

SALSA

SALSAHPC Dynamic Virtual Cluster on

FutureGrid -- Demo at SC09

• Top: 3 clusters are switching applications on fixed environment. Takes approximately 30 seconds.

• Bottom: Cluster is switching between environments: Linux; Linux +Xen; Windows + HPCS. Takes approxomately 7 minutes

• SALSAHPC Demo at SC09. This demonstrates the concept of Science on Clouds using a FutureGrid iDataPlex.

(41)
(42)
(43)
(44)

S

A

L

S

A

HPC Group

Indiana University

References

Related documents

Regular benefits answered the good cause waiver unemployment benefit payments depend on appeal to file an individual at the program.. Annual average weekly check for waiver

We will, therefore, consider In Deal Product to include any and all product ordered within the order dates, shipped within the ship dates, or received within the

in a grafting reactor. The active carbon sites on the carbon nanotube surface can react with chitosan.. then bond between chitosan and MWCNTs [16]. Moreover, chitosan

Molecular characterization of the hydro- gen voltage-gated channel 1 (HVCN1) has enabled identification of unanticipated and diverse functions: HVCN1 not only modulates signaling

Temperature dependence of voltage- gated H + currents in human neutrophils, rat alveolar epithelial cells,.. and

This study aims to describe how principles of constructive alignment were applied to a first year course in our SLP programme (Human Communication Development), a key

Under Right 4(2) of the Code of Health and Disability Services Consumers’ Rights (the Code), Mrs A’s daughter, Miss A, had the right to have pharmacy services provided that

If the negotiation results in no privacy, or if it results in privacy using algorithms or key lengths that are deemed not strong enough, or if the authentication is not