Predicting Intermediate Storage Performance for Workflow - - PowerPoint PPT Presentation

predicting intermediate storage performance for workflow
SMART_READER_LITE
LIVE PREVIEW

Predicting Intermediate Storage Performance for Workflow - - PowerPoint PPT Presentation

Predicting Intermediate Storage Performance for Workflow Applications Lauro B. Costa , Samer Al-Kiswany, Abmar Barros*, Hao Yang, and Matei Ripeanu University of British Columbia *UFCG, Brazil PSDW13 Nov, 18th co-located with SC13 Storage


slide-1
SLIDE 1

Predicting Intermediate Storage Performance for Workflow Applications

Lauro B. Costa, Samer Al-Kiswany, Abmar Barros*, Hao Yang, and Matei Ripeanu University of British Columbia *UFCG, Brazil

PSDW’13 Nov, 18th co-located with SC’13

slide-2
SLIDE 2

2

Storage System

Backend Storage (e.g., NFS, GPFS)

One or few servers

Compute Nodes

High Aggregated BW Many Nodes

Storage system co-deployed Avoid backend storage as bottleneck Opportunity to configure per application

slide-3
SLIDE 3

Storage System Configuration

Different storage parameters

e.g., data placement, #nodes, chunk size

Benefit different workloads

e.g., data sharing, I/O intensive, read/write size

Proper choice of parameters depend on the workload

3

slide-4
SLIDE 4

BLAST Example

4

slide-5
SLIDE 5

How to support the intermediate storage configuration?

5

slide-6
SLIDE 6

Define a target performance Analyze system activity Run application Identify parameters

Configuration Loop

Costly

6

slide-7
SLIDE 7

Automated Configuration

What...If... Evaluation Engine

Application Benchmark Trace Platform description Desired Configuration

Automating the Configuration Loop

7

What...If...

Execute

slide-8
SLIDE 8

Predictor Requirements

Accuracy Response Time/Resource Usage Usability

What...If...

8

slide-9
SLIDE 9

Storage System Model

9

Focus at high level

– Manager, storage nodes, clients – No details (e.g., CPU)

Simple seeding

slide-10
SLIDE 10

Storage System Model

10

slide-11
SLIDE 11

Seeding the Model

No monitoring changes to the system

– Use coarse level measurements – Infers services’ time

Small deployment

– One instance of each component

11

slide-12
SLIDE 12

Evaluation

Metrics

– Accuracy – Response time

Workload

– Synthetic benchmark – An application

Testbed: cluster of 20 machines

12

slide-13
SLIDE 13

An Application

BLAST

DNA database file Several queries (tasks) over the file

Evaluate different parameters

# of storage nodes, # of clients chunk size

13

slide-14
SLIDE 14

BLAST Results

Performance varies Accuracy allows good decisions ~3000x less resources

~2x difference

14

slide-15
SLIDE 15

Concluding Remarks

Non-intrusive seeding process/system identification Low-runtime Accuracy allows good decision Predictor can support development

15

slide-16
SLIDE 16

Future Work

Automate parameter exploration

– Prune space by preprocessing input – Induce placement based on task dependency

Add applications Increase Scale Add metrics

– Cost – Energy is challenging – Data transferred is accurate

16

slide-17
SLIDE 17

Concluding Remarks

Non-intrusive seeding process/system identification Low-runtime Accuracy allows good decision Predictor can support development

17

slide-18
SLIDE 18

Workflow Applications

DAG represents task- dependency Scheduler controls dependency and task execution on a cluster Tasks communicate via files

18

slide-19
SLIDE 19

Synthetic Benchmarks

Stress the system

– I/O only, tend to create contention

Based workflow patterns

– Evaluate different data placements

19

slide-20
SLIDE 20

Workflow Patterns

20

slide-21
SLIDE 21

Pipeline Reduce Broadcast

Synthetic Benchmarks

Accuracy can support the decision ~2000x less resources

21

slide-22
SLIDE 22

Related Work

  • Storage enclosure focused
  • Detailed model and seeding (monitoring

changes)

  • Lack of prediction on the total execution time for

workflow applications

  • Machine Learning

22

slide-23
SLIDE 23

Workload Description

I/O trace per task

– read, write – size, offset

Task dependency graph

23

slide-24
SLIDE 24

BLAST: CPU hours

24

slide-25
SLIDE 25

25

Platform Example – Argonne BlueGene/P

10 Gb/s Switch Complex

GPFS

24 servers IO rate : 8GBps = 51KBps / core

2.5K IO Nodes

850 MBps per 64 nodes

160K cores

Hi-Speed Network 2.5 GBps per node

Nodes dedicated to an application Storage system coupled with the application’s execution

slide-26
SLIDE 26

26

Tuning is Hard

Defining target values can be hard Understanding distributed systems, application or application’s workloads is complex Workload or infrastructure can change Tuning is time-consuming

slide-27
SLIDE 27

Storage System

27

slide-28
SLIDE 28

Montage Example

28

Tasks communicate via shared files

slide-29
SLIDE 29

Storage System

Meta-data manager Storage module Client module

29

slide-30
SLIDE 30

Define a target performance Analyze system activity Performance Predictor Identify parameters Define a target performance Analyze system activity Run application Identify parameters

Configuration Loop

Costly

30

slide-31
SLIDE 31

Intermediate Storage System

Storage system co-deployed Avoid backend storage as bottleneck Opportunity to configure per application

31