CA

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 13

Group Members

Sheraz Ahmad
Muhammad Jahangir
Difference between Process and Threading

Process
 Heavy weight task
Thread
 Light weight task
Threading and its Types

It is a basic unit of CPU utilization which comprises


 Thread ID
 Program counter
 A register set
 Stalk
There are two types of threading
 Single threading
 Multi threading
Multithreading

What is Multithreading?

In computer architecture, multithreading is the ability of


a central processing unit (CPU) to provide multiple threads
of execution concurrently, supported by the operating
system. This approach differs from multiprocessing. In a
multithreaded application, the threads share the resources
of a single or multiple cores, which include the computing
units, the CPU caches.
Multithreading
Advantages and Disadvantages of
Multithreading

Advantages:
lead to faster overall execution,
running another thread may prevent resources from
becoming idle.
Disadvantages:
Multiple threads can interfere with each other when
sharing hardware resources such as caches
Overall efficiency varies.
Types of Multithreading

 Fine Grain Multithreading


 Coarse Grain Multithreading
 Inter leaved Multithreading
 Simultaneous Multithreading
Simultaneous Multithreading

 An evolutionary processor architecture originally


introduced in 1995 by Dean Tullsen at the University of
Washington that aims at reducing resource waste in wide
issue processors.
 Simultaneous multithreading (SMT) is a technique for
improving the overall efficiency of CPUs with hardware
multithreading. SMT permits multiple independent
threads of execution to better utilize the resources
provided by modern processor architectures.
Simultaneous Multithreading

 Simultaneous multithreading, abbreviated as SMT, is the


process of a CPU splitting each of its physical cores into
virtual cores, which are known as threads. This is done
in order to increase performance and allow each core to
run two instruction streams at once.
Advantages of Simultaneous
Multithreading

 It is primarily beneficial in commercial environments


where the speed of an individual transaction is not as
important as the total number of transactions that are
performed.
 Simultaneous multithreading is expected to increase the
throughput of workloads with large or frequently
changing working sets, such as database servers and
Web servers.
Advantages of Simultaneous
Multithreading

 Workloads that see the greatest simultaneous


multithreading benefit are those that have a high Cycles
Per Instruction (CPI) count.
Disadvantages of Simultaneous
Multithreading

 There is a security concern with certain simultaneous


multithreading implementations.
 Depending on the design and architecture of the
processor, simultaneous multithreading can decrease
performance if any of the shared resources are
bottlenecks for performance.

You might also like