Introduction to grid technologies, parallel and cloud computing. Alaa Osama Allam Saida Saad Mohamed Mohamed Ibrahim Gaber



Similar documents
Cluster, Grid, Cloud Concepts

Tamanna Roy Rayat & Bahra Institute of Engineering & Technology, Punjab, India talk2tamanna@gmail.com

Cloud Computing Submitted By : Fahim Ilyas ( ) Submitted To : Martin Johnson Submitted On: 31 st May, 2009

CLOUD COMPUTING. When It's smarter to rent than to buy

Cloud systems M2 DL.

Grid Computing Vs. Cloud Computing

Introduction to Cloud Computing

Scientific and Technical Applications as a Service in the Cloud

CHAPTER 8 CLOUD COMPUTING

Cloud computing: the state of the art and challenges. Jānis Kampars Riga Technical University

How To Understand Cloud Computing

Outline. What is cloud computing? History Cloud service models Cloud deployment forms Advantages/disadvantages


Cloud Computing For Distributed University Campus: A Prototype Suggestion

What Is It? Business Architecture Research Challenges Bibliography. Cloud Computing. Research Challenges Overview. Carlos Eduardo Moreira dos Santos

High Performance Applications over the Cloud: Gains and Losses

UNIT I INTRODUCTION TO CLOUD COMPUTING

Workshop on High Performance Computing for Science and Applications for Academic Development

Analysis and Research of Cloud Computing System to Comparison of Several Cloud Computing Platforms

Part V Applications. What is cloud computing? SaaS has been around for awhile. Cloud Computing: General concepts

Cloud computing. Intelligent Services for Energy-Efficient Design and Life Cycle Simulation. as used by the ISES project

for my computation? Stefano Cozzini Which infrastructure Which infrastructure Democrito and SISSA/eLAB - Trieste

High Performance Computing Cloud Computing. Dr. Rami YARED

How To Compare Cloud Computing To Cloud Platforms And Cloud Computing

A Practical Approach to Compiling Multipleiversion and Embracing Failure

Remote sensing information cloud service: research and practice

High Performance Computing. Course Notes HPC Fundamentals

Contents. What is Cloud Computing? Why Cloud computing? Cloud Anatomy Cloud computing technology Cloud computing products and market

A Study on Analysis and Implementation of a Cloud Computing Framework for Multimedia Convergence Services

Cloud Computing Technology

Cloud computing an insight

Manjrasoft Market Oriented Cloud Computing Platform

Perspectives on Moving to the Cloud Paradigm and the Need for Standards. Peter Mell, Tim Grance NIST, Information Technology Laboratory

Analytical Study of Various High Performance Computing Paradigms

Programming models for heterogeneous computing. Manuel Ujaldón Nvidia CUDA Fellow and A/Prof. Computer Architecture Department University of Malaga

Cloud Computing: The Next Computing Paradigm

On Cloud Computing Technology in the Construction of Digital Campus

Cloud Computing Overview

White Paper on CLOUD COMPUTING

DISTRIBUTED SYSTEMS AND CLOUD COMPUTING. A Comparative Study

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

Cloud Computing: Computing as a Service. Prof. Daivashala Deshmukh Maharashtra Institute of Technology, Aurangabad

Manjrasoft Market Oriented Cloud Computing Platform

An Introduction to Private Cloud

LOGO Resource Management for Cloud Computing

Cloud Computing. Cloud computing:

An Efficient Cost Calculation Mechanism for Cloud and Non Cloud Computing Environment in Java

Introduction to Engineering Using Robotics Experiments Lecture 18 Cloud Computing

Cloud Computing for HPC

System Models for Distributed and Cloud Computing

High Performance Computing (HPC)

CLOUD COMPUTING. A Primer

Building Platform as a Service for Scientific Applications

Dr.K.C.DAS HEAD PG Dept. of Library & Inf. Science Utkal University, Vani Vihar,Bhubaneswar

Emerging Technology for the Next Decade

CS 698: Special Topics in Big Data. Chapter 2. Computing Trends for Big Data

Cloud Computing, and REST-based Architectures Reid Holmes

IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures

CMS Tier-3 cluster at NISER. Dr. Tania Moulik

Parallel Computing: Strategies and Implications. Dori Exterman CTO IncrediBuild.

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

Cloud Models and Platforms

A Study of Infrastructure Clouds

Symmetric Multiprocessing

Networks and Services

Elastic Cloud Computing in the Open Cirrus Testbed implemented via Eucalyptus

Cloud Computing Architecture: A Survey

Cloud Computing. Adam Barker

CLOUD COMPUTING INTRODUCTION HISTORY

Li Sheng. Nowadays, with the booming development of network-based computing, more and more

LSKA 2010 Survey Report Job Scheduler

A Comparative Study of cloud and mcloud Computing

Cloud Computing and Amazon Web Services

PARALLEL & CLUSTER COMPUTING CS 6260 PROFESSOR: ELISE DE DONCKER BY: LINA HUSSEIN

SURFsara HPC Cloud Workshop

Rapid Application Development

Perspectives on Cloud Computing and Standards. Peter Mell, Tim Grance NIST, Information Technology Laboratory

Clodoaldo Barrera Chief Technical Strategist IBM System Storage. Making a successful transition to Software Defined Storage

Study on Architecture and Implementation of Port Logistics Information Service Platform Based on Cloud Computing 1

Cloud Infrastructure Foundation. Building a Flexible, Reliable and Automated Cloud with a Unified Computing Fabric from Egenera

Cloud-Security: Show-Stopper or Enabling Technology?

Cloud Infrastructure Pattern

A New Approach of CLOUD: Computing Infrastructure on Demand

Automated Scaling of Cluster Using Deployment Diagrams in Platform-As-A- Service

Security in Changing IT Ecosystem: Virtualization and Cloud Computing

Mobile Cloud Computing T Open Source IaaS

IBM Cloud Computing mraky nad Českou republikou. Petr Plodík high-end/blade product manager IBM Central and Eastern Europe

Chapter 7: Distributed Systems: Warehouse-Scale Computing. Fall 2011 Jussi Kangasharju

Security & Trust in the Cloud

Xeon+FPGA Platform for the Data Center

Embedded Systems Programming in a Private Cloud- A prototype for Embedded Cloud Computing

How To Understand Cloud Computing

Cloud Computing INTRODUCTION

HPC Wales Skills Academy Course Catalogue 2015

IBM EXAM QUESTIONS & ANSWERS

Data Centric Systems (DCS)

A WALK THROUGH CLOUDS WITH CLOUD PROVISIONING AND MANAGEMENT

Aneka: A Software Platform for.net-based Cloud Computing

Transcription:

Introduction to grid technologies, parallel and cloud computing Alaa Osama Allam Saida Saad Mohamed Mohamed Ibrahim Gaber

OUTLINES Grid Computing Parallel programming technologies (MPI- Open MP-Cuda ) Cloud Computing

What is Grid computing..? Grid computing is the collection of computer resources from multiple locations to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files. Grid computing is distinguished from conventional high performance computing systems such as cluster computing in that grid computers have each node set to perform a different task/application. Grid computers also tend to be more heterogeneous and geographically dispersed (thus not physically coupled) than cluster computers Although a single grid can be dedicated to a particular application, commonly a grid is used for a variety of purposes. Grids are often constructed with general-purpose grid middleware software libraries. Grid sizes can be quite large. Grids are a form of distributed computing whereby a super virtual computer is composed of many networked loosely coupled computers acting together to perform large tasks. For certain applications, distributed or grid computing, can be seen as a special type of parallel computing that relies on complete computers (with onboard CPUs, storage, power supplies, network interfaces, etc.) connected to a computer network (private or public) by a conventional network interface, such as Ethernet. This is in contrast to the traditional notion of a supercomputer, which has many processors connected by a local high-speed computer bus.

What Can You Do with? Combine dozens of supercomputers to solve a single problem Link realtime satellite data feeds with distributed computational and display systems Enable schools across the country to participate in interactive simulations and data analysis Interactively combine the output of many independent servers to analyze a new genome Build a network of immersive virtual reality sites to collaboratively design a new vehicle Etc.

Why Now..? The Internet as infrastructure Increasing bandwidth, advanced services Advances in storage capacity Terabytes, petabytes per site Increased availability of compute resources clusters, supercomputers, etc. Advanced applications simulation based design, advanced scientific instruments,...

The Worldwide LHC Computing Grid

Interconnected computer systems where the machines utilize the same resources collectively. Grid computing usually consists of one main computer that distributes information and tasks to a group of networked computers to accomplish a common goal. Grid computing is often used to complete complicated or tedious mathematical or scientific calculations.

Workload Management System

The Workload Management System (WMS) comprises a set of Grid middleware components responsible for distribution and management of tasks across Grid resources. The purpose of the Workload Manager (WM) is accept and satisfy requests for job management coming from its clients meaning of the submission request is to pass the responsibility of the job to the WM. WM will pass the job to an appropriate CE for execution taking into account requirements and the preferences expressed in the job description file The decision of which resource should be used is the outcome of a matchmaking process.

User Interface Node The basic functionalities allows User to: -list the computing resources -submit a job, -get the job status, -cancel a job, -retrieve the output of a job.

WMS

Uploading data to the Grid SE Compress the data into tar format Copy the compressed file to the UI. Copy the compressed file from UI to the grid.

Data management practice 1. Initialize your proxy-certificate $ voms-proxy-init -voms edu 2. If you finish your work destroy your proxy-cetrtificate $ voms-proxy-destroy

Submitting a job

Get available computing elements

Check the job status

Get output

Cloud Computing

Contents What is Cloud Computing? Cloud Computing Characteristics JINR Cloud Structure Virtualization Advantages and disadvantages of Cloud Computing

What is Cloud Computing? Cloud Computing : is a general term used to describe a new class of network based computing that takes place over the Internet, a collection/group of integrated and networked hardware, software and Internet infrastructure (called a platform). Using the Internet for communication and transport provides hardware, software and networking services to clients

Cloud Computing Characteristics Common Characteristics: Files are always stored in cloud, difficult to lost it. Massive Scale Virtualization Low Cost Software Geographic Distribution Service Orientation Advanced Security Essential Characteristics: On Demand Self-Service Broad Network Access Rapid Elasticity Resource Pooling Measured Service 24 Adopted from: Effectively and Securely Using the Cloud Computing Paradigm by peter Mell, Tim Grance

Cloud Computing Service Layers Application Focused Infrastructure Focused Services Services Application Development Platform Storage Hosting Description Services Complete business services such as PayPal, OpenID, OAuth, Google Maps, Alexa Application Cloud based software that eliminates the need for local installation such as Google Apps, Microsoft Online Development Software development platforms used to build custom cloud based applications (PAAS & SAAS) such as SalesForce Platform Cloud based platforms, typically provided using virtualization, such as Amazon ECC, Sun Grid Storage Data storage or cloud based NAS such as CTERA, idisk, CloudNAS Hosting Physical data centers such as those run by IBM, HP, NaviSite, etc.

Activities System administrators - testing and studying specifics of installation and operation of new apps or testing updates Developers - development, testing and debugging various apps in various environments. Users - installing and using apps for their daily work

Virtualization Virtual Machines technology allows multiple virtual machines to run on a single physical machine. Why we make virtual machines? Flexibility Availability Scalability Hardware utilization Security

Virtualization Systems

Cloud Consumers

Why OpenNebula? In JINR, We used OpenNebula as Iaas platform for cloud architecture : We practiced on multi tasks : Creation of virtual machines Clone different virtual machines Creation of templates and images Creation of different services for multi tier network Uploading of data files

Advantages of Cloud Computing Lower computer and software costs: Improved performance: Instant software updates: Unlimited storage capacity: Increased data reliability: Universal document access: Latest version availability: Easier group collaboration: Device independence. Data and services are stored remotely but accessible from anywhere.

Disadvantages of Cloud Computing Requires a constant Internet connection - Cloud computing is impossible if you cannot connect to the Internet. Does not work well with low-speed connections: Stored data might not be secure - Can unauthorized users gain access to your confidential data? Each cloud systems uses different protocols and different APIs

Parallel computations We investigate :- 1. HybriLIT Computation clusters. 2. How work on Cl. 3. Create Mpi,open Mp, Cuda programms

Current HybriLIT version

Parallel Technologies

Parallel program concept Parallel program is a set of simultaneously executed processes. Initial program code is developed in C/C++ or Fortran program languages with the use of MPI library. Number of processes and number of used processors is defined at the launch of the parallel program by means of MPI runtime environment. All program processes are sequentially indexed. The index of the process is called the rank of the process.

MPI Functions MPI_Init() initiate a MPI computation MPI_Comm_size() how many processes participate in a given MPI communicator? MPI_Comm_rank() which one am I? (A number between 0 and size-1) MPI_Send() send a message MPI_Recv() receive a message MPI_Finalize() terminate the MPI computation and clean up

MPI Example

How to compile and execute MPI program

Output, parallel execution

Open MP Technology What is Open MP? Open MP is an Application Program Interface (API), jointly defined by a group of major computer hardware and software vendors. Open MP provides a portable, scalable model for developers of shared memory parallel applications. The API supports C/C++ and Fortran on a wide variety of architectures. Components of Open MP Compiler Directives Environment Variables Run Time Environment

Components of Open MP

The open MP execution Model

Open MP Example

Execution time and acceleration

CUDA (Compute Unified Device Architecture)

Cuda Example How to develop reduction task on CUDa S= 𝑁 1 𝑖=0 𝑓(𝑢𝑖), 𝑢𝑖 = 𝑐𝑜𝑚𝑝𝑙𝑒𝑥 𝑛𝑢𝑚𝑏𝑒𝑟 We create our cuda programs for three different function 𝑓(𝑢𝑖):- 1. 2. 3. 𝑢𝑖 𝑢𝑖 2 sin(𝑢𝑖)

Acceleration 𝑢𝑖 2 Time 𝑢𝑖 sin(𝑢𝑖) CPU 4.06 22.7 9.24 GPU 0.45 0.49 0.44 20 46 ACCELERAT 9 ION

Summary There is different technology to run any Parallel program. -MPI - open Mp - CUDA Every one of them has some advantages.

www.themegallery.com