Computer Organization and Architecture: Chapter 5: Advanced ILP and Parallel Processing

Parallel Processing

Questions: 1. What is parallel processing? 2. State the basic ways to achieve parallelism. 3. What is multicore? 4. State the limitations to increase clock frequency or processor speed. 5. Explain the necessity of multicore.

Computer Organization and Architecture

Chapter 5:

Advanced ILP and Parallel Processing

 

Parallel Processing

• To fulfil increasing demands for higher performance it is necessary to process data concurrently to achieve better throughput instead of processing each instruction sequentially as in a conventional computer. Processing data concurrently is known as parallel processing. There are two basic ways by which we can achieve parallelism. These are:

Multiple functional units : System may have two or more ALUs so that they can execute two or more instructions at the same time.

Multiple processors : System may have two or more processors operating concurrently.

• We know that, the earlier processors had only one Arithmetic and Logic Unit (ALU) in its CPU. Furthermore, the ALU could only perform one function at a time, resulting quite slow Processing process for executing a long sequence of arithmetic and logical instructions. Now‒a‒days processors are available with multiple functional units. These multiple functional units are used to execute functions of ALU which can be distributed and operate in parallel. This parallel execution increases the speed of process.


• Fig. 5.1.1 shows one typical way of separating the execution unit into eight functional units. These functional units can be operated in parallel to achieve faster execution time. All functional units are independent of each other, so two operands can be added while third is being shifted or incremented and so on. These functional units get operands from processor registers and the result of the operation is stored back in the processor register/s as shown in Fig. 5.1.1.


Definitions

• Multiprocessor system : A computer system with at least two processors is called multiprocessor system.

• Task‒level parallelism or process‒level parallelism : Utilizing multiple processors for executing independent programs simultaneously is known as task‒level parallelism or process‒level parallelism.

• Parallel processing program : It is referred to a single program that runs on multiple processors simultaneously.

Cluster : A set of computers connected over a local area network that function as a single large multiprocessor is called cluster.


Why multicore ?

• A multicore is an architecture design that places multiple processors on a single die (computer chip) to enhance performance and allow simultaneous processing of multiple tasks more efficiently. Each processor is called a core. The multicore architecture designs are known as Chip Multiprocessors (CMPs) because they allow single chip multiprocessing.


Limitations to increase clock frequency or processor speed

• One way to increase system performance is to increase clock frequency or processor speed. However, this approach has following limitations in terms of cost effectiveness:

■ Higher frequency requires more power.

■ More power consumption results it harder and more expensive to cool the system.

■ More power consumption also affects sizing and packaging considerations.

• Thus, instead of trying to make the processor faster to gain performance, adding more processors on a single chip (multicore architecture) is a better approach.

• One of the important aspect of multicore architecture is that, there is no real significant difference between programming for multiple processors in separate packages and programming for multiple processors contained in a single package on a single chip. Thus software developers who are familiar with multiprocessing can easily switch to multicore development.

• These multicores are almost always Shared Memory Processors (SMPs), as they usually share a single physical address space.


Review Questions

1. What is parallel processing?

2. State the basic ways to achieve parallelism.

3. What is multicore?

4. State the limitations to increase clock frequency or processor speed.

5. Explain the necessity of multicore.

 

Computer Organization and Architecture: Chapter 5: Advanced ILP and Parallel Processing : Tag: Computer : - Parallel Processing


Computer Organization and Architecture: Chapter 5: Advanced ILP and Parallel Processing



Under Subject


Computer Organization and Architecture

CW25201 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation



Related Subjects


Discrete Mathematics

MA25C14 3rd Semester CSE,IT,CY,AIDS departments. | 2025 Regulation | 3rd Semester 2025 Regulation


Data Structures

CS25C08 3rd Semester CSE,IT,CY,AIDS departments. | 2025 Regulation | 3rd Semester 2025 Regulation


Computer Organization and Architecture

CW25201 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation


Object Oriented Programming

CS25C07 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation


Web Technologies

IT25301 3rd Semester IT department. | 2025 Regulation | 3rd Semester 2025 Regulation


English Communication Skills Laboratory I

EN25C03 3rd Semester all department. | 2025 Regulation | 3rd Semester 2025 Regulation


Skill Development Course I

3rd Semester all department. | 2025 Regulation | 3rd Semester 2025 Regulation