Download as pdf or txt
Download as pdf or txt
You are on page 1of 56

Introduction to

Cloud Computing –
Evolution from
other Computing
Paradigms
DR. MUHAMMAD USMAN HASHMI
D E PA RT M E N T O F CO M P U T E R S C I E N C E ,
BA H R I A U N I V E RS I T Y, I S L A M A BA D

Ms. Maryam Khalid worked on these slides


Computing Paradigms
What is Cloud computing ?

3
Cloud Definitions
• Definition from NIST (National Institute of Standards and Technology)
 Cloud computing is a model for enabling convenient, on-demand network access
to a shared pool of configurable computing resources (e.g., networks, servers,
storage, applications, and services) that can be rapidly provisioned and released
with minimal management effort or service provider interaction.

4
What is
Computing?
Calculate

5
What is Computing?
In computer science
• Computing is any goal-
oriented activity requiring,
benefiting from, or creating
computing machinery.

6
Computing in Computer
Science
Computing includes
• Designing and building hardware and software
systems for a wide range of purposes
• Processing, structuring, and managing various
kinds of information
• Doing scientific studies using computers
• Making computer systems behave intelligently
• Creating and using communications and
entertainment media
•… 7
What Computing
Paradigms are there?
Name a few?

Personal, Mobile and Autonomic Computing


Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing

8
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
9
Personal Computing
Personal computer
Who maintains the system?
Customizable? Utilization and upfront
cost?
In 2010, For the first time, smartphones
outsold PCs.
In 2017, 87% of connected device sales
were expected to be smartphones and
tablets!

10
Autonomic Computing
Started by IBM in 2001
Develop computer systems capable of self-management
Inspired by the Autonomic Nervous System of the human
body. Complex yet
self-managing
• This nervous system controls important bodily functions (e.g. heart
rate, and blood pressure) without any conscious intervention.

In a self-managing autonomic system, the human operator


defines general policies and rules that guide the self-
management process.
11
Mobile Computing

Mobile computing is "taking a computer and all


necessary files and software out into the field.”

"Being able to use a computing device even when


being mobile and therefore changing location.
Portability is one aspect of mobile computing."

12
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
13
• Ubiquitous= “seeming to be in all places”
• Pervasive= “present or noticeable in every
part of a thing or place”

• In computing terms, those seem like somewhat similar


concepts. Ubiquitous computing would be everywhere,
and pervasive computing would be in all parts of your
life
Ubiquitous and
• Ubiquitous computing is wherever you go, there is a
Pervasive computer you can use. Example internet cafe,
mainframe terminals. Pervasive computing is when
Computing computers are everywhere inside all things, maybe also
within you.

• Small, inexpensive, robust devices


distributed throughout everyday life

14
“Fun” internet appliances

Web-enabled toaster
+
weather forecaster

IP picture frame
http://www.ceiva.com/ Wifi Bathroom Scales

Internet
refrigerator

15
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
16
Parallel Computing
•Parallel Computing
• A form of computation in which many calculations are carried out
simultaneously
• Large problems can often be divided into smaller ones, which are then solved
concurrently ("in parallel")

•Advantages
• Cost efficient
• High performance
• Improve Utilization
17
instructions

Problem ..… CPU


time

instructions

..… CPU
Problem Flynn’s Taxonomy?
..… CPU

..… CPU
time

18
Parallel Programming Models
Shared-memory
Distributed-memory model

19
Two Basic Parallel Programming Models
Shared memory model
• Memory can be simultaneously accessed by multiple process with an intent to
provide communication among them or avoid redundant copies

20
Two Basic Parallel Programming Models
Distributed memory model
• A multiple-processor computer system in which each processor has its own private memory
• Computational tasks can only operate on local data, and if remote data is required, the
computational task must communicate with one or more remote processors

21
Super Computing
Thousands of processors
Used for computation intensive problems

22
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
23
“…computing may someday be organized as
a public utility just as the telephone system
is a public utility... The computer utility
could become the basis of a new and
important industry.”
− John McCarthy (a professor of MIT) 1961.

24
“As of now, computer networks are still in their
infancy, but as they grow up and become
sophisticated, we will probably see the spread of
computer utilities which, like present electric and
telephone utilities, will service individual homes
and offices across the country.”

− L. Kleinrock (one of the chief scientists of the original ARPANET project) 1969.

25
C O M P U T I N G W I L L O N E D AY B E …

The 5th
Utility

26
The 5th Utility
Traditional utilities
1. Water
2. Electricity
3. Natural gas
4. Telephone network

Computing is being transformed to a model consisting of services that are


commoditized and delivered in a manner similar to traditional utilities

 Utility Computing
27
Utility Computing
Computing as a Utility
• Provide the basic level of computing service that is considered
essential to meet the everyday needs
• Users access services based on their requirements without regard
to where the services are hosted or how they are delivered

Offering computing resources as a metered service

28
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
29
Demand for Computing Power

Aerospace

Life Sciences
Internet &
Ecommerce

CAD/CAM Digital Biology


Military Applications
30
How to Run Applications Faster
There are 3 ways to improve Computer analogy
performance: 1. Using faster hardware
1. Work Harder 2. Using optimized algorithms
2. Work Smarter and techniques to solve
computational tasks
3. Get Help
3. Using multiple computers to
solve a particular task

31
Distributed system
A system in which several
interconnected computers share the
computing tasks assigned to system
The system has a distributed memory
where each processor has its private
memory.
Information exchanged using
communication models, example:
MPI 32
Distributed Computing
Using distributed systems to solve large problems.
Paradigms
1. Cluster computing
2. Grid computing
3. Cloud computing

33
Traditional Food Chain

34
Food Chain of Computers

Workstation PC
Mini Computer
Mainframe

35
Food Chain of Distributed Computing

Workstation
Mainframe PC

Mini Computer

36
Rise & Fall of Computing Technologies

Mainframes Mini-Computers Personal Computers

Distributed
Computing

Mini-Computers Personal Network


Computers Computing

1970 1980 1995 2000+


37
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
38
Cluster
Computing
A cluster is a type of parallel
and distributed system,
which consists of a
collection of inter-
connected stand-alone
computers working together
as a single integrated
computing resource

39
The Cluster
•A Node
• A single or multiprocessor system with
memory, I/O facilities, & OS
•A Cluster:
• Generally, two or more computers
(nodes) connected together
• In a single cabinet, or physically
separated & connected via a LAN
• Appear as a single system to users and
applications
• Provide a cost-effective way to gain
features and benefits

40
Computer Collaboration in Cluster
•How machines co-work in cluster?
•Using MPI to inter-connect those stand-alone computers
•Message Passing Interface (MPI)
•A specification that allows computers to communicate
with each other
•Use Message Passing to do synchronization

41
Message Passing Interface (MPI)

Distributed memory programming


model

Complete computers connected


through an interconnection network

42
Cluster Applications
•Cluster had become the mainstream computing system
•Apply parallel program to
• Computing intensive
• Data intensive
• Timing critical system
• … any time you are pleased

43
Existing Computing Paradigms
Personal, Mobile and Autonomic Computing
Ubiquitous and Pervasive Computing
Super and Parallel Computing
Utility Computing
Distributed, Cluster and Grid Computing
Cloud Computing
44
Demand for More Computing Power
•The large-scale, computational-
/data-intensive scientific
applications require more
resources
•Applications
•Scientific application
•Computer animation
•Computer games
•Image processing
•Data mining
•… etc
45
Grid Computing
Grid computing
• To coordinate resource sharing and problem solving in dynamic,
multi-institutional virtual organization (VO)
• Provide the generic approach for a general resource-sharing
framework that address the VO requirement
• Support the creation and use of computation- and data-enriched
environments
• Uses open standards and interfaces

46
The Grid
• An analogy with the
electric power grid around
1910
• In the mid-1990s, this
term is coined to denote a
proposed distributed
computing infrastructure
for advanced science and
engineering
47
Resource Collaboration in Grids
Virtual Organization (VO)
• A set of individuals and/or institutions defined by such sharing
rules form
◦ what is shared
◦ who is allowed to share
◦ the conditions under which sharing occurs

An actual organization can participate in one or more VOs


by sharing some or all of its resources
48
Example of
VOs
•Three actual organizations
(the ovals) & Two VOs (P, Q)
• P: links participants in an
aerospace design
consortium
• Q: links colleagues who
have agreed to share
spare computing to run
ray tracing computations

49
CERN
L A R G E H A D R O N C O L L I D E R : is
the world’s largest and most
powerful particle accelerator

CERN, the European Organization for


Nuclear Research, is one of the
world's largest and most respected
centers for scientific research

50
Grid Environments
•Resources are heterogeneous
• supercomputers, storage systems, data sources, and specialized devices owned by
different administrative domains

•Enables the sharing, selection, and aggregation of a wide variety of


geographically distributed resources
•To solve large scale resource-intensive problems in science, engineering,
and commerce
•Hailed as the next revolution after the Internet and the World Wide Web

51
Computing Paradigm Evolution
What’s
next ?

2100 2100 2100 2100

2100 2100 2100


2100
RESOURCE CAPACITY

2100

Desktop SMPs or Local Enterprise Global Next big thing


(Single or Multi- Super- Cluster Cluster/Grid Cluster/Grid Grid or Cloud??
processors) computers
52
How is Cloud Computing different?

53
How is Cloud Computing different?
A more mature paradigm

Builds upon existing computing paradigms and shares a lot with


others

Having said that, cannot be mapped directly to any particular


domain and poses some significant new challenges
54
Cloud Computing Players
more and more…

55
Questions?

You might also like