100% found this document useful (1 vote)
5K views17 pages

Unit-1 (Cloud Computing) 1. (Accessible) Scalable Computing Over The Internet

This document discusses the evolution of computing platforms and models from the 1950s to present. It covers the rise of distributed, parallel, and cloud computing enabled by advances in networking technologies. Key points include: - Computing has shifted from centralized mainframes to distributed systems using multiple interconnected computers over the internet. This improves scalability and allows solving large problems. - Advances in multicore CPUs, GPUs, virtualization, and networking have enabled new computing models like cloud computing which can be centralized or distributed over large data centers. - High performance computing focuses on speed while high throughput computing prioritizes processing large volumes of tasks. Both models are now implemented using distributed and parallel technologies.

Uploaded by

Jigidi Jinga
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
5K views17 pages

Unit-1 (Cloud Computing) 1. (Accessible) Scalable Computing Over The Internet

This document discusses the evolution of computing platforms and models from the 1950s to present. It covers the rise of distributed, parallel, and cloud computing enabled by advances in networking technologies. Key points include: - Computing has shifted from centralized mainframes to distributed systems using multiple interconnected computers over the internet. This improves scalability and allows solving large problems. - Advances in multicore CPUs, GPUs, virtualization, and networking have enabled new computing models like cloud computing which can be centralized or distributed over large data centers. - High performance computing focuses on speed while high throughput computing prioritizes processing large volumes of tasks. Both models are now implemented using distributed and parallel technologies.

Uploaded by

Jigidi Jinga
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Unit-1 (Cloud Computing)

1. (Accessible) Scalable Computing Over the Internet:-


 Accessible (Scalable) data from internet and workout using various tactics.
 Internet is a global wide area network that connects is autonomous of
computer systems across the world.
 Instead of using a centralized computer to solve computational problems,
 A parallel and distributed computing system uses multiple computers to
solve large-scale problems over the Internet.
 Therefore, distributed computing improves data-intensive (data severe) and
network-centric (Bandwidth and Network Traffic).
The Age of Internet Computing:
 A high Performance Computing (HPC) application is no longer optimal
(best) for measuring system performance.
 The development of computing clouds instead demands high throughput
(amount) computing (HTC) systems built with parallel and distributed
computing technologies.
 We have to upgrade data centers using fast servers, storage systems, and
high-bandwidth networks.
The Platform Evolution:-
 From 1950 to 1970, a few of processors (mainframes) that are with the IBM
360 and CDC 6400.
 From 1960 to 1970, lower-cost mini-computers such as the DEC PDP 11
and VAX Series.
 From 1970 to 1980, we saw extensive use of personal computers built with
VLSI microprocessors.
 From 1980 to 2000, massive numbers of portable computers and pervasive
devices seemed in both wired (strengthened) and wireless applications.
 Since 1990, the use of both HPC (High Performance Computers) and HTC
(High Throughput Computer) systems are hidden in clusters, grids, or
Internet clouds have boomed.
 On the Right, side is HPC (Supercomputers), clusters of cooperative
computers out of a wish to share computing resources slowly replace
supercomputers (Massively Parallel Processors or MPPs). The cluster is
often a collection of homogeneous compute nodes that are physically
connected in close range to one another.
 On the left-hand side HTC is the peer-to-peer (P2P) networks are formed for
distributed file sharing and content delivery applications.

 A P2P system is built over many client machines. Peer machines are
globally distributed in nature.
 P2P, cloud computing, and web service platforms are more focused on HTC
applications than on HPC applications.
 Clustering and P2P technologies are lead to the development of
computational grids or data grids.
High-Performance Computing

 For many years, HPC systems emphasize the raw speed performance.
 The speed of HPC systems has increased from Gflops in the early 1990s to
now Pflops in 2010.
High-Throughput Computing

 It earnings more attention to high-flux computing. The main application for


high-flux computing is in Internet searches and web services by millions or
more users simultaneously.
 The performance aim thus shifts to measure high throughput or the number
of tasks completed per unit of time.
 HTC technology needs to not only improve in terms of batch processing
speed, but also address the severe problems of cost, energy savings, security,
and trustworthiness at many data and enterprise computing centers.
Three New Computing Models
 Improvements in virtualization make it possible to understand the growth of
Internet clouds as a new computing model.
 The maturity of radio-frequency identification (RFID), Global Positioning
System (GPS), and sensor technologies has triggered the development of the
Internet of Things (IoT).
Differences in Computing Model
 The high-technology community has argued for many years about the
precise definitions of centralized computing, parallel computing, distributed
computing, and cloud computing.

 In general, distributed computing is the opposite of centralized computing.

 The field of parallel computing overlaps with distributed computing to a


great extent, and cloud computing overlaps with distributed, centralized, and
parallel computing.
Centralized Computing
 All computer resources are centralized in one physical system.

 All resources (processors, memory, and storage) are fully shared and tightly
coupled within one integrated OS (one module is dependent on other
module).

 Many data centers and supercomputers are centralized systems, but they are
used in parallel, distributed, and cloud computing applications.
Parallel Computing

 All processors are whichever tightly coupled with centralized shared


memory or loosely coupled with distributed memory.
 Inter processor communication is accomplished through shared memory or
via message passing.
 Computer system capable of parallel computing is commonly known as a
parallel computer.
 Programs running in a parallel computer are called parallel programs.
 The process of writing parallel programs is often referred to as parallel
programming.

Distributed Computing

 All processors are either tightly coupled with centralized shared memory or
consists of multiple autonomous computers, each having its own private
memory, communicating through a computer network.
 Information exchange in a distributed system is accomplished through
message passing.
 A computer program that runs in a distributed system is known as a
distributed program.
 The process of writing distributed programs is referred to as distributed
programming.
Cloud Computing

 An Internet cloud of resources can be whichever a centralized or a


distributed computing system.
 The cloud applies parallel or distributed computing, or both.

 Clouds can be built with physical or virtualized resources over large data
centers that are centralized or distributed.

 It is a form of utility computing or service computing.


Ubiquitous Computing

 It refers to computing with pervasive (universal) devices at any place and


time using wired or wireless communication.

 The Internet of Things (IoT) is a networked connection of everyday objects


including computers, sensors, humans, etc.
 The IoT is supported by Internet clouds to achieve ubiquitous computing
with any object at any place and time.
1.2. Technologies for Network based Systems:-

The following technologies for Network based Systems are used as follows:

Multicore CPUs and Multithreading Technologies:

 Processor speed is measured in millions of instructions per second (MIPS) and network
bandwidth is measured in megabits per second (Mbps) or gigabits per second (Gbps). The
unit GE (Gigabits Ethernet) refers to 1 Gbps Ethernet bandwidth.
 Advances in CPU Processors advanced CPUs or microprocessor chips assume a
multicore architecture with dual, quad, six, or more processing cores. These processors
exploit parallelism at ILP and TLP levels.
 ILP mechanisms include multiple-issue superscalar architecture (CPU that implements a
form of parallelism namely instruction level parallelism), dynamic branch prediction,
and speculative (theoritical) execution, among others. These ILP techniques demand
hardware and compiler support.
 In addition, DLP(Data Loss Prevention) and TLP(Transmission Line Pulse is a integrated
circuit behavior in the current and time domin) are highly explored in graphics processing
units (GPUs) that adopt many-core architecture with hundreds to thousands of simple
cores.
 Both multi-core CPU and many-core GPU processors can handle multiple instruction
threads at different magnitudes today.
 Figure 1.5 shows the architecture of a typical multicore processor.
 Each core is essentially a processor with its own private cache (L1 cache).
 Multiple cores are housed in the same chip with an L2 cache that is shared by all cores.
 In the future, multiple CMPs could be built on the same CPU chip with even the L3 cache on
the chip.
 Multicore and multithreaded CPUs are equipped with many high-end processors, including
the Intel i7, Xeon, AMD Opteron, Sun Niagara, IBM Power 6, and X cell processors. Each
core could be also multithreaded.
Multicore CPU and Many-Core GPU Architectures:

 Multicore CPUs may increase from the tens of cores to hundreds or more in the future.
 However, the CPU has reached its limit in terms of exploiting massive DLP due to the
aforementioned memory wall problem. This has triggered the development of many-core
GPUs with hundreds or more thin cores.
 Both (is the 32-bit version of the x86 instruction set architecture designed by Intel and
first implemented in the 80386 micropressor) IA-32 and IA-64 Instruction Set
architectures are built into commercial CPUs. Now, x-86 processors have been extended
to serve HPC and HTC systems in some high-end server processors.
 Many (Reduced Instruction Set Computer which allows a computers microprocessor to
have fewer cycles per instruction than a complex instruction set computer) RISC
processors have been replaced with multicore x-86 processors and many-core GPUs in
the Top 500 systems. This tendency indicates that x-86 upgrades will dominate in data
centers and supercomputers.
 The GPU(Graphic Processing Unit is a Programmable logic chip specialized for display
functions for the puposes of GPU renders images, animations and Vedio Processing
computer screen. Also, GPUs are located on plug-in cards in a chipset on the
motherboard) also has been applied in large clusters to build supercomputers in MPPs.
 In the future, the processor industry is also keen to develop asymmetric or heterogeneous
chip multiprocessors that can house both fat CPU cores and thin GPU cores on the same
chip.

Multicore CPUs and Multithreading Technologies


 Consider in Figure 1.6 the dispatch of five independent threads of instructions to four
pipelined data paths (functional units) in each of the following five processor categories,
 from left to right: a four-issue superscalar processor, a fine-grain multithreaded
processor, a coarse-grain multithreaded processor, a two-core CMP, and a simultaneous
multithreaded (SMT) processor.
 The superscalar processor is single-threaded with four functional units.
 Each of the three multithreaded processors is four-way multithreaded over four functional
data paths.
 In the dual-core processor, assume two processing cores, each a single-threaded two-way
superscalar processor.
 Instructions from different threads are distinguished by specific shading patterns for
instructions from five independent threads.
 Characteristic instruction scheduling patterns are shown here. Only instructions from the
same thread are executed in a superscalar processor.
 Fine-grain multithreading switches the execution of instructions from different threads
per cycle.
 Course-grain multithreading executes many instructions from the same thread for quite a
few cycles before switching to another thread.
 The multicore CMP executes instructions from different threads completely.
 The SMT allows simultaneous scheduling of instructions from different threads in the
same cycle.
 These execution patterns closely mimic an ordinary program.
 The blank squares correspond to no. of available instructions for an instruction data path
at a particular processor cycle.
 More blank cells imply lower scheduling efficiency. The maximum ILP or maximum
TLP is difficult to achieve at each processor cycle.
GPU Computing to Exascale and Beyond

 Exascale refers to computing systems capable of at least one exaFLOPS, or a billion


billion calculations per second. (improves the speed of per execution the instructions)
 It is a graphics coprocessor or accelerator mounted on a computer’s graphics card or
video card.
 A GPU offloads the CPU from tedious graphics tasks in video editing applications.
 The world is first GPU, the GeForce 256, was marketed by NVIDIA in 1999.
 These GPU chips can process a minimum of 10 million polygons per second, and are
used in nearly every computer on the market today.
 For example, the Xeon X5670 CPU has six cores. However, a modern GPU chip can be
built with hundreds of processing cores.
 Unlike CPUs, GPUs have a throughput architecture that exploits massive parallelism
by executing many concurrent threads slowly, instead of executing a single long thread in
a conventional microprocessor very quickly.
 General-purpose computing on GPUs, known as GPGPUs, has looked in the HPC field.
NVIDIA’s CUDA model was for HPC using GPGPUs.
How GPUs Work:

 Today, the NVIDIA GPU has been upgraded to 128 cores on a single chip. Furthermore,
each core on a GPU can handle eight threads of instructions.
 This translates to having up to 1,024 threads executed concurrently on a single GPU. This
is true massive parallelism, compared to only a few threads that can be handled by a
conventional CPU.
 The CPU is optimized for latency caches, while the GPU is optimized to deliver much
higher throughput with explicit management of on-chip memory.
 GPU offloads (relieves) the CPU from all data-intensive (concentrated) calculations, not
just those are related to video processing.
 Conventional GPUs are widely used in mobile phones, game consoles, embedded
systems, PCs, and servers.
 The NVIDIA CUDA Tesla or Fermi is used in GPU clusters or in HPC systems for
parallel processing of massive floating-pointing data.
GPU Programming Model

There are four challenges are identified for exascale computing:

(1) Energy and Power (Control),


(2) Memory and Storage,
(3) Concurrency and Locality (Area)
(4) System Resilience (Flexibility) or System Elasticity

 Figure 1.7 shows the interaction between a CPU and GPU in performing parallel
execution of floating-point operations concurrently.
 The CPU is the conventional multicore processor with limited parallelism to exploit.
 The GPU has a many-core architecture that has hundreds of simple processing cores
organized as multiprocessors.
 Each core can have one or more threads.
 Essentially, the CPU’s floating-point kernel computation role is largely offloaded to the
many-core GPU.
 The CPU instructs the GPU to perform massive data processing.
 The bandwidth must be matched between the on-board main memory and the on-chip
GPU memory.
 This process is carried out in NVIDIA’s CUDA programming using the GeForce 8800 or
 Tesla and Fermi GPUs.

Power Efficiency of the GPU

 Power constrains what we can put in a CPU or GPU chip.


 Dally (Waste Time) has estimated that the CPU chip consumes about 2 nJ/instruction,
while the GPU chip requires 200 pJ/instruction, which is 1/10 less than that of the CPU.
 The CPU is optimized for latency in caches and memory, while the GPU is optimized for
throughput with explicit management of on-chip memory.
09-12-2019
Memory, Storage, and Wide-Area Networking
Memory Technology
 The capacity increase of disk arrays will be even greater in the years to come.
 Faster processor speed and larger memory volume result in an extensive hole between
processors and memory.
 The memory partition may become even worse a problem limiting the CPU
performance in the future.
Disks and Storage Technology
 Finally, power consumption, cooling, and packaging will limit large system development.
 Power increases linearly with respect to clock frequency and quadratic helper with
respect to voltage applied on chips.
 Clock rate cannot be increased forever.
 Lowered voltage supplies are very much in demand.
System-Area Interconnects
 An Ethernet switch or a local area network (LAN) mostly interconnects the nodes in
small clusters.
 As Figure 1.11 shows, a LAN typically is used to connect client hosts to big servers.
 A storage area network (SAN) connects servers to network storage such as disk arrays.
 Network attached storage (NAS) connects client hosts directly to the disk arrays.
 All three types of networks often appear in a large cluster built with commercial network
components.
 If no large distributed storage is shared, a small cluster could be built with a multiport
Gigabit Ethernet switch plus copper cables to link the end machines.
 All three types of networks are commercially available.

Virtual Machines and Virtualization Middleware:

 A conventional computer has a single OS image. This offers an inflexible architecture that
tightly couples application software to a specific hardware platform.
 Some software running well on one machine may not be executable on another platform with
a different instruction set under a fixed OS.
 Virtual machines (VMs) offer novel solutions to under utilized resources, application
inflexibility, software manageability, and security concerns in existing physical machines.
 Currently, to build large clusters, large grids (networks), and large clouds, we need to access
large amounts of computing, storage, and networking resources in a virtualized manner.
 We need to aggregate those resources, and confidently, offer a single system image.
 In particular, a cloud of provisioned resources must rely on virtualization of processors,
memory, and I/O facilities dynamically.

Virtual Machines

 Virtualization is a computer architecture technology by which multiple virtual machines


(VMs) are multiplexed in the same hardware machine.
 Virtual Machine (VM) is not a real machine, but it can be created from another physical
machine.
 More than one VM may share the resources (CPU, Memory, and Hard Disk & Network
Resources) of the same physical machine.
 One physical machine may have more than one VM.
 VM used to create different execution environment, which may entirely different from
physical host execution environment.
VM Primitive Operations

 First, the VMs can be multiplexed between hardware machines, as shown in Figure 1.13(a).
o Second, a VM can be suspended and stored in stable storage, as shown in Figure 1.13(b).
o Third, a suspended VM can be resumed or provisioned to a new hardware platform, as
shown in Figure 1.13(c).
o Finally, a VM can be migrated from one hardware platform to another, as shown in Figure
1.13(d).
o VM approach will significantly enhance the utilization of server resources.
o Multiple server functions can be consolidated on the same hardware platform to achieve higher
system efficiency.

Data Center Virtualization for Cloud Computing - Data Center Growth and Cost Breakdown

o A large data center may be built with thousands of servers.


o Smaller data centers are typically built with hundreds of servers.
o The cost to build and maintain data center servers has increased over the years.
Low-Cost Design Philosophy
o High-end switches or routers may be too cost-prohibitive for building data centers.
o Thus, using high-bandwidth networks may not fit the economics of cloud computing.

Convergence of Technologies
o Essentially, cloud computing is enabled by the convergence of technologies in four areas:-

(1) Hardware virtualization and multi-core chips,


(2) Utility and grid computing,
(3) SOA, Web 2.0, and WS Mashups, and
(4) Autonomic computing and data center automation.

SYSTEM MODELS FOR DISTRIBUTED AND CLOUD COMPUTING


o Distributed and cloud computing systems are built over a large number of autonomous computer
nodes.
o These node machines are interconnected by SANs, LANs, or WANs in a hierarchical manner

 First, the VMs can be multiplexed between hardware machines, as shown in Figure
1.13(a).
 Second, a VM can be suspended (Postponed) and stored in steady storage, as shown in
Figure 1.13(b).
 Third, a suspended VM can be resumed (recommenced) or provisioned to a new
hardware platform, as shown in Figure 1.13(c).
 Finally, a VM can be traveled from one hardware platform to another, as shown in Figure
1.13(d).
 VM approach will significantly improve the utilization of server resources.
 Multiple server functions can be combined on the same hardware platform to achieve
higher system efficiency.
Data Center Virtualization for Cloud Computing - Data Center Growth and Cost
Breakdown
 A large data center may be built with thousands of servers.
 Smaller data centers are typically built with hundreds of servers.
 The cost to build and maintain data center servers has increased over the years.
Low-Cost Design Philosophy
 High-end switches or routers may be too cost-prohibitive for building data centers.
 Thus, using high-bandwidth networks may not fit the economics of cloud computing.
Convergence of Technologies

Essentially, cloud computing is enabled by the convergence of technologies in four areas:-


(1) Hardware virtualization and multi-core chips,
(2) Utility and grid computing,
(3) SOA, Web 2.0, and WS Mashups, and
(4) Autonomic computing and data center automation.
SYSTEM MODELS FOR DISTRIBUTED AND CLOUD COMPUTING
 Distributed and cloud computing systems are built over a large number of autonomous
computer nodes.
 These node machines are interconnected by SANs, LANs, or WANs in a hierarchical
manner.

Common questions

Powered by AI

The evolution of processor architectures, from single-core CPUs to multicore CPUs and many-core GPUs, has significantly impacted distributed and cloud computing systems. The shift from single-core to multicore processors, which incorporate multiple processing cores within a single chip, allows for parallelism and increased performance, enabling more efficient task execution across distributed systems . Additionally, the development of many-core GPUs further enhances parallel processing capabilities by allowing for the execution of multiple threads simultaneously, which is crucial for handling massive data-intensive calculations in cloud environments . These advancements support the scalability and efficiency required in distributed and cloud computing systems, as they allow for the handling of larger workloads and more complex computations simultaneously across numerous nodes .

Network-based technologies impact the development and efficiency of distributed systems by enabling fast and reliable data transmission between interconnected nodes. Technologies such as multicore CPUs, multithreading, and high-bandwidth network interfaces like Gigabit Ethernet are critical in supporting parallel processing across distributed systems . The efficient bandwidth provided by these network technologies allows for seamless communication and data exchange, crucial in maintaining system coherence and performance in distributed environments . Furthermore, advanced interconnects reduce latency and enhance the throughput necessary for large-scale distributed applications, contributing to the overall scalability and robustness of these systems .

Virtual machines enhance resource utilization in cloud computing environments by allowing multiple virtual instances to operate on a single physical machine. This multiplexing of VMs results in better utilization of server resources as it consolidates multiple server functions onto a single hardware platform, leading to increased system efficiency . VMs also provide flexibility by enabling the migration of workloads between hardware platforms, improving load balancing and fault tolerance . Additionally, VMs offer a single system image through virtualization of processors, memory, and I/O facilities, facilitating the scalable management of large cloud environments .

Virtualization middleware contributes significantly to cloud computing's system models by providing a layer that abstracts physical resources into virtualized components. This abstraction enables the aggregation of computing, storage, and networking resources, allowing them to be dynamically allocated and managed as virtualized instances . The virtualization layer supports the creation, management, and migration of virtual machines, thus facilitating high resource utilization and flexibility. It also enables a single system image for large distributed and cloud systems, enhancing system manageability and efficiency . Through virtualization, cloud infrastructures can offer scalable, reliable, and elastic services to meet varying demand levels, thus underpinning modern cloud computing paradigms .

Data center virtualization is significant in cloud computing cost management as it allows for the consolidation of resources, reducing the need for physical hardware and enhancing server utilization . By creating virtual instances that share the same physical resources, organizations can decrease hardware expenditure and maintenance costs. This approach maximizes resource use and minimizes the data center's physical footprint, which translates into cost savings in energy consumption, cooling, and infrastructure management . Additionally, virtualization enables dynamic resource allocation, further improving cost efficiency by aligning resource use closely with demand . Overall, virtualization supports a more agile and cost-effective cloud infrastructure .

Multiprocessor architectures are crucial in addressing memory and storage challenges in exascale computing by providing distributed memory systems and advanced memory hierarchy designs. These architectures use a combination of multicore and many-core processors that enable concurrent data processing, reducing memory latency and increasing throughput . Advanced interconnects between processors and memory components help manage the extensive data movement required at the exascale level. Moreover, multiprocessor designs facilitate the efficient use of on-chip memory, addressing the bandwidth disparities between the vast computational power available and the limited speed of external memory systems . Overall, these architectures help mitigate the constraints of memory bottleneck in exascale computing environments.

High-throughput computing (HTC) systems and high-performance computing (HPC) systems differ primarily in their performance objectives. HTC focuses on maximizing the number of tasks completed per unit of time, which is crucial for applications like internet searches and web services that require processing by millions of users simultaneously . This shift in performance emphasis is on high throughput rather than sheer computational speed. In contrast, HPC systems traditionally aim for raw speed performance, measured in flops (floating-point operations per second), with an emphasis on achieving maximum computational power for tasks such as large-scale simulations and complex calculations .

Key challenges in achieving exascale computing include energy and power control, memory and storage efficiency, concurrency and locality, and system resilience or elasticity . These challenges are directly related to GPU architecture, which is designed to handle massive parallelism and throughput. GPUs consume significantly less power per instruction compared to CPUs, addressing the energy and power control challenge . The vast number of simple cores in GPUs allows for high concurrency, essential for handling numerous threads simultaneously, while locality considerations are managed through optimized on-chip memory use . Overall, GPU architecture's design is well-aligned with overcoming these challenges, paving the way for future progress toward exascale computing .

High-performance computing (HPC) systems play a pivotal role in advancing scientific research by providing the computational power necessary for complex simulations and data analyses that are infeasible on standard machines. HPC systems, equipped with large numbers of processors and high-speed interconnects, enable researchers to model and simulate phenomena in fields such as climate science, genomics, and astrophysics with remarkable precision and scale . The raw speed and parallel processing capabilities of HPC systems facilitate the handling of vast datasets, accelerating the discovery process and enabling experiments that push the boundaries of current scientific knowledge. Additionally, HPC systems support the development of algorithms and models that require significant computational resources, thereby driving innovation and expanding research capabilities in various scientific domains .

The integration of CPUs and GPUs in chip designs affects computing performance and efficiency by combining the strengths of both processing units. CPUs, optimized for serial task execution and low-latency operations, are paired with GPUs, which excel in handling parallel tasks with high throughput . This hybrid approach allows for a more effective division of computational workloads, where CPUs handle control-intensive tasks while GPUs manage compute-intensive and parallel workloads . Such integration enhances performance by significantly increasing the number of concurrent threads executed, thus boosting data processing capabilities. Moreover, the shared architecture allows for better energy efficiency by offloading intensive computations from the CPU to the more power-efficient GPU cores .

You might also like