Parallel and distributed
computing
COMP3139
Agenda
• Basics of Data Communication
• Distributed computing use cases
• Mainframes
• Clusters
• Grid Computing
• Difference between Grid and Distributed
Computing
• Technologies for distributed computing
Basics of Computer Communication
• Many organizations use the internet and computer programs to talk to
each other and maintain communication over long distances.
• Understanding computer communication methods and how they function
may help you use them more effectively at work.
• Definition: Computer communications are any processes that allow you
to communicate which feature a computer or computer program. The
computer does this by sending data to one or more other computers, who
decode the message and allow the recipient to send a message back.
Importance of computer communications
• Using computer communication is important because it allows you to
send messages over long distances which can help you coordinate with
team members.
• Computer communication also usually has some form of built-in record
system .
• If you send an email to your supervisor about scheduling a meeting for
Monday, both you and your supervisor can reference that email later.
Computer communication types
Email
• Electronic mail, often shortened to email, sends a digital message to a
recipient in a process like traditional mail.
• You need to create a custom email address, which functions as a virtual
mailbox.
Text messaging
• Text messaging is like email, except you use a phone number instead of
an email address to determine where to send your message.
Computer communication types
Image and video messaging
• Image and video messaging are when you take a pre -taken picture or video
message and send it to another person.
Virtual reality chatting
• W ith new technology making virtual reality, also known as VR, accessible to
many people, many chat rooms allow a VR function
Livestream engagement
• Livestreams are a form of mixed computer communication where one person
or group streams content to a wider audience.
Distributed computing
use cases
• Distributed computing is everywhere
today
• Mobile and web applications are
examples of distributed computing
• Machines work together in the
backend for the application.
• Let’s explore some ways in which
different industries use high-
performing distributed applications.
Healthcare and life sciences
• Use distributed computing to:
o Model and
o simulate complex life science data
• Image analysis,
• Medical drug research, and
• Gene structure analysis all become faster with
distributed systems
• Accelerate structure-based drug design by
visualizing molecular models in three dimensions.
Healthcare and life sciences
• Reduce genomic data processing times to get early
insights into
o cancer, cystic fibrosis
o Develop intelligent systems that help doctors
diagnose patients by processing a large volume of
complex images like
o MRIs,
o X-rays, and
o CT scans.
Engineering research
• Engineers can simulate complex physics and mechanics concepts on distributed
systems
• To improve product design, build complex structures, and design faster vehicles
Here are some examples:
• Computation fluid dynamics research studies the behavior of liquids
• Implements those concepts in aircraft design and car racing.
Engineering research
Computer-aided engineering
• which requires compute -intensive simulation tools to test new
• plant engineering,
• electronics, and
• consumer goods
Financial services
• Firms use distributed systems to perform high -speed economic simulations
• assess portfolio risks,
• predict market movements, and
• support financial decision-making
• Create web applications that use the power of distributed systems
Financial services
Which can do:
• Deliver low-cost, personalized premiums
• Use distributed databases to securely support a very high volume of financial
transactions.
• Authenticate users and protect customers from fraud
Energy and Environment
• Need to analyze large volumes of data to improve operations and transition to
sustainable and climate-friendly solutions.
• Use distributed systems to analyze high -volume data streams from a vast
network of sensors and other intelligent devices
These are some tasks they might do:
• Streaming and consolidating data for the structural design of power plants
• Real-time oil well monitoring for proactive risk management
Mainframes
• Mainframes were the first example of large
computing facilities whic h leverage multiple processing
units
• Powerful, highly reliable computers specialized for
large data movement
• They are not considered as a distributed system;
however, they can perform big data processing
• Batch processing is the important application of
mainframes.
Clusters
• Clusters have started as the low-cost alternative
to the mainframes and supercomputer
• Since the 1980s cluster has become standard
technology for parallel and high-performance
computing.
• Due to their low investment cost different research
institutions, companies,
• cheap machines with high computational power
• Example of a cluster is weather forecasting
Grid Computing
• Geographically distributed computer networks work
together to perform common tasks
• You can form them from computing resources that belong
to multiple individuals or organizations .
Grid computing can be used to:
• simulate the behavior of a nuclear explosion,
• model the human genome, or analyze
• data generated from particle accelerators.
Grid computing vs. distributed computing
• Grid computing is highly scaled distributed computing that
emphasizes performance and coordination between several
networks.
• Each grid acts like a tightly coupled computing system,
Externally, grids are more loosely coupled
• Grid computing systems can be homogeneous or
heterogeneous and operate collectively as virtual
supercomputers .
Grid computing vs. distributed computing
• Distributed computing systems consist of several
software components spread over multiple computers
• Distributed computing has a broad scope and can
describe systems in close physical proximity
• Distributed computing aims to achieve a single goal at
any one time.
• several distributed computing systems make a grid
computing system.
What is AWS High-Performance Computing?
• You can accelerate innovation with fast networking and virtually
unlimited distributed computing infrastructure.
For example:
• Amazon Elastic Cloud Compute EC2: to support virtually any
workload with secure, resizable compute capacity.
• AWS: to scale hundreds of thousands of computing jobs across
AWS compute services.
Technologies for Distributed
Computing:
• Distributed computing, once a concept relegated to
the realm of research and specialized applications.
• Revolutionized data processing, storage, and
collaboration across industries and domains.
• Several key technologies driving distributed
computing
Technologies for Distributed Computing
Cloud Computing
• Cloud computing is perhaps the most prominent technology
underpinning distributed computing.
• Allows organizations and individuals to access and utilize
computing resources over the internet.
• Eliminating the need for on-premises infrastructure
• Cloud services such as Amazon Web Services (AWS)
Technologies for Distributed Computing
Cloud Computing
• Google Cloud provide scalable, on-demand
resources for everything from data storage to
running complex algorithms.
• Democratized access to high-performance
computing
• Enabling startups and large enterprises alike to
harness the power of distributed systems.
• Examples include Netflix, emails, MS office 365
THANK YOU