reconfigurable data processing for clouds parth shah kanika chawla sowmith boyanpalli 1

22
RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

Upload: veronica-jefferson

Post on 23-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

RECONFIGURABLE DATA PROCESSING FOR CLOUDS

Parth ShahKanika ChawlaSowmith Boyanpalli

1

Page 2: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

MOTIVATION

To Implement Reconfigurable computing in Cloud Based Systems

2 / 20

Page 3: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

INTRODUCTION Cloud Computing??

Datacenters??

Reconfigurable Computing??

3 / 20

Page 4: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

BACKGROUND Reconfigurable computing paved way for mainstream high performance

computing .

Modern FPGA’s implement high bandwidth custom memory hierarchies offering

flexibility and performance

Implementing these FPGA’s in modern computing systems is hindered by the

need for specialized FPGA boards and also lack of programming modes

They also don’t have a good O.S suport and ABI interfaces for application

development.

4 / 20

Page 5: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

WHAT’S IN THE PAPER Using FPGA’s just like CPU’s and GPU’s in the cloud.

Using FPGA’s in datacenters scaling down the energy requirement when

compared to using conventional processors.

5 / 20

Page 6: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

CLOUD COMPUTING History

Virtualization

Xen Hypervisor – Partition Multiple Guest OS – adopted by amazon

Sudden surges in load is handled by adding additional virtual machines -

Providing dynamic reconfiguration

6 / 20

Page 7: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

HARDWARE CLOUDS Data Centers employ horizontal scaling by increasing the number of hosts.

Vertical Scaling is difficult as modern systems are made up of multicore systems

with constant clock speed.

The growth of data centers is limited due to energy constraints and software has

reached the saturation.

Hence Hardware improvisation is needed.

7 / 20

Page 8: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

RESEARCH INTERESTS

Major research interests areas in cloud computing

Impact of reconfigurable FPGA on these research areas

1. Operating Systems

2. Datacenter Programming

3. Information Security

Page 9: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

OPERATING SYSTEMS Hypervisors expose simple network and storage interfaces to VMs.

Actual Physical drivers handled elsewhere

9 / 20

Page 10: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

OPERATING SYSTEMS

Networking involves bridging, topology and integration with systems like Openflow

Storage deals with Snapshots and deduplication of common blocks across VMs

Currently limited to I/O, can be extended to run computation over data

Availability of GPU and Programmable I/O boards

New OS designed to simplify the task of writing, deploying and profiling code across heterogeneous platforms

10 / 20

Page 11: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

DATACENTER PROGRAMMING Distributed dataflow frameworks that transparently handle fault tolerance,

resource scheduling, synchronization, message passing

Examples: - MapReduce, Dryad, CIEL

Simple Programming models

Directed Acyclic Graphs (DAG)

Run-time schedules iteratively walks DAG

Prepares host to ensure data is available locally

Main challenge: Reconfiguring FPGAs

Mesos investigates partitioning physical resources across multiple frameworks on same set of hosts 11 / 20

Page 12: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

DATACENTER PROGRAMMING Encouragement for novel database models other than SQL and ACID models

Experiments done to program all data processing operators on top of large FPGAs

Right computation model enables significant improvement in power consumption

and parallelization

Close integration between high level host languages and FPGAs required

MORA: an example of DSL for streaming vector and matrix operations aimed at

multimedia applications.

Compiler infrastructures like LLVM to convert C/C++ code to FPGAs

Less effort to design and implement portably

12 / 20

Page 13: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

DATACENTER PROGRAMMING Many tools and methods available for easy programming and

synthesis

Accelerator: library to synthesis data parallel programs in C# to FPGAs

Multi-stage programming: Abstract algorithms converted to high level language and then into desired architecture.

13 / 20

Page 14: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

INFORMATION SECURITY

Page 15: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

15/20

CLOUD outsources processing over large datasheets

This code is often written in C or FORTRAN

Even a small bug in input can let attackers execute arbitrary code on the host machine

Although the attackers cannot access the virtual data in the hypervisor, they still have access to many local network resources

Malicious data can be crafted to exploit memory errors and execute as a code on a CPU

THE ISSUE

Page 16: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

THE SOLUTION

16 / 20

By shifting from software to hardware, information security is improved immensely.

Baking algorithm implementation into FPGA ensures that attackers cannot run their arbitrary code in the system.

The data is never manipulated via the CPU rather it is directly compiled to the FPGA

Only a small channel exists between OS and FPGA to communicate results.

The conventional FPGA model has scope of hacking through SRAM but when deployed in cloud, attackers don’t have any physical access.

Page 17: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

DATA SECURITY Data needs security against the untrusted cloud infrastructure, which

can be ensured using encoding data.

Encoding is done for information flow constraints, which are ideal for domain specific data flow languages.

Homomorphic encryption are also being deployed. It permits computation over encrypted data without decrypting the underlying data.

But it is expensive to implement.

But recently, lattice based cryptography which decrease the complexity cost of homomorphic encryption, are being used.

Using Lattice reduction, speedups of 2.12 have been reported.

17 / 20

Page 18: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

DATA SECURITY

Reducing cost of cryptography has a social impact.

Until now anonymity networks such as Tor AND Freenet were being used for

storing data. Using them is way too slow.

There have been talks to shift this burden to cloud computing, but cost remains

the main constraint.

Virtual networking is reconfigured much more than hardware setups.

18 / 20

Page 19: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

19

THE FUTURE CHALLENGES How to unify the demands of data-centric processing, language integration,

network processing into a single infrastructure

The need for better OS integration, device models, and abstractions

Without an ABI or source API, software re-use and integration is very difficult.

Debugging and visualization support. General purpose systems provide a

hypervisor-kernel-user space language runtime model that gets progressively

easier and higher-level to debug. Abstraction boundaries exist where they don’t in

current FPGAs. Staged programming or functional testing in a general-purpose

systems makes this easier.

We need to develop a common set of concepts, principles and models for

application execution on reconfigurable computing platforms to allow

collaboration between universities and companies and to provide a solid

framework to build new innovations and applications. This kind of eco-system has

been sadly lacking for reconfigurable systems.

Page 20: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

CONCLUSION It is encouraging that cloud computing is driven by fine-grained charging for the

computation resources used.

Reconfigurable FPGAs driven down the cost of many types of computation

commonly found on the cloud, and thus a community-driven deployment of a

cloud setup with rentable hardware would provide a focal point to “fill in the

blanks” for reconfigurable FPGA computing in the cloud.

20 / 20

Page 21: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

LIMITATIONS The paper does not provide any experimental results and is much of a literature

survey

Half of the paper covers background and introduction and does not give much

information about implementation.

A practical model or example should have been given.

Page 22: RECONFIGURABLE DATA PROCESSING FOR CLOUDS Parth Shah Kanika Chawla Sowmith Boyanpalli 1

THANK YOU