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

Advanced ILP and Parallel Processing: Two Marks Important Questions and Answers

Computer Organization and Architecture

Computer Organization and Architecture: Chapter 5: Advanced ILP and Parallel Processing: Anna University Part A Two Marks Important Questions and Answers

Computer Organization and Architecture

Chapter 5: Advanced ILP and Parallel Processing

 

Two Marks Questions with Answers

 

1. Define 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.

2. Define multiprocessors.

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.

3. Define multiprocessor system.

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

4. Define task‒level or process level parallelism.

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

5. Define parallel processing program.

Answer: It is referred to a single program that runs on multiple processors simultaneously.

6. What is cluster ?

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

7. What is multicore ?

Answer: 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.

8. What do you mean by CMPs ?

Answer: The multicore architecture designs that allow single chip multiprocessing are known as Chip Multiprocessors (CMPs).

9. What are the limitations to increase clock frequency or processor speed?

Answer:

■ 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.

10. Define SMPS.

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.

11. State the need for speculation.

Answer: It is the most important methods for finding and exploiting more ILP.

12. What is ILP? Why is it needed?

Answer:

When instructions in a sequence are independent and can be executed in parallel by overlapping, there is an Instruction Level Parallelism (ILP). Since instructions are executed in parallel it is very much needed to achieve high performance.

13. What is issue slots ?

Answer: The positions from which instructions could issue in a given clock cycle is called issue slot.

14. What is issue packet ?

Answer: It is the set of instructions that issues together in one clock cycle is called issue packet. The packet may be determined statically by the compiler or dynamically by the processor.

15. What is speculation?

Answer: An approach that allows the compiler or the processor to "guess" the outcome of an instruction to remove it as a dependence in executing other instructions is called speculation.

16. What is VLIW ?

Answer: VLIW stands for Very Long Instruction Word (VLIW). It is a style of instruction set architecture that launches many operations that are defined to be independent in a single wide instruction, typically with many separate opcode fields.

17. Define use latency.

Answer: Number of clock cycles between a load instruction and an instruction that can use the result of the load without stalling the pipeline is called use latency.

18. Define register renaming.

Answer: During the unrolling process, the compiler introduces additional registers to eliminate dependences that are not true data dependences, but could either lead to potential hazards. The goal of this process, is called register renaming.

19. Define anti‒dependence or name dependence.

Answer: An ordering forced by the reuse of a name, typically a register, rather than by a true dependence that carries a value between two instructions is called anti‒dependence or name dependence.

20. Define superscalar.

Answer: It is an advanced pipelining technique that enables the processor to execute more than one instruction per clock cycle by selecting them during execution.

21. Define super scalar processor.

Answer: A processor capable of parallel instruction execution and having performance level greater than one instruction per cycle is known as superscaler processor.

22. What is multiple issue?

Answer: A scheme whereby multiple instructions are launched in one clock cycle is called multiple issue.

23. What is static multiple issue?

Answer: An approach for implementing a multiple‒issue processor where many decisions are made by the compiler before execution is called static multiple issue.

24. What is dynamic multiple issue?

Answer: An approach for implementing a multiple‒issue processor where many decisions are made during execution by the processor is called dynamic multiple issue.

25. What is dynamic pipeline scheduling ?

Answer: Dynamic pipeline scheduling is a hardware support for reordering the order of instruction execution so as to avoid stalls.

26. Define commit unit.

Answer: It is the unit in a dynamic or out‒of‒ order execution pipeline that decides when it is safe to release the result of an operation to programmer‒ visible registers and memory.

27. Define reservation station.

Answer: It is a buffer within a functional unit that holds the operands and the operation.

28. Define reorder buffer.

Answer: The buffer that holds results in a dynamically scheduled processor until it is safe to store the results to memory or a register is called reorder buffer.

29. What is out‒of‒order execution ?

Answer: A situation in pipelined execution when an instruction blocked from executing does not cause the following instructions to wait is called out‒of‒order execution.

30. What is in‒order commit ?

Answer: A commit in which the results of pipelined execution are written to the programmer‒visible state in the same order that instructions are fetched is called in‒order commit.

31 State the primary methods to increase ILP.

Answer: There are two primary methods for increasing the potential amount of instruction‒level parallelism. The first is increasing the depth of the pipeline to overlap more instructions and second is to replicate the internal components of the computer so that it can launch multiple instructions in every pipeline stage.

32. What is multiple issue?

Answer: A technique by which multiple instructions are launched in one clock cycle is called multiple issue.

33. What is Instruction‒Level Parallelism (ILP) ?

Answer:

Instruction‒Level Parallelism (ILP) is the ability of a processor to execute multiple instructions simultaneously. It is achieved by identifying independent instructions in a program and executing them in parallel to improve performance and reduce execution time.

34. What is the role of a superscalar processor in exploiting ILP ?

Answer: A superscalar processor issues and executes multiple instructions in a single clock cycle. It uses hardware to dynamically select independent instructions and execute them in parallel pipelines. Most modern CPUs (Intel, AMD, ARM) use superscalar designs to increase ILP.

35. What is register renaming and why is it important for ILP?

Answer: Register renaming is a hardware technique where the processor assigns extra physical registers to eliminate false dependencies like WAR and WAW. This prevents pipeline stalls, allows more instructions to run in parallel, and improves ILP. It is typically implemented using rename tables and the Reorder Buffer (ROB).

36. How does speculation improve ILP?

Answer: Speculation allows the CPU to execute instructions ahead of time based on predicted branch outcomes.

• If the prediction is correct, performance improves.

• If wrong, speculative results are discarded using the ROB.

• Speculation works together with branch prediction and enables higher instruction throughput.

37. What is dynamic scheduling in ILP ?

Answer: Dynamic scheduling is a technique where the hardware (not the compiler) decides the order of instruction execution during runtime.

It allows the processor to:

• Avoid stalls caused by data hazards

• Execute independent instructions out of order

• Improve pipeline efficiency and ILP

38. What is the role of the Reorder Buffer (ROB) in ILP?

Answer: The Reorder Buffer (ROB) stores results of out‒of‒order executed instructions and commits them in correct program order.

Its functions include:

• Supporting register renaming

• Holding speculative results

• Ensuring precise exceptions

• Allowing safe recovery from branch mispredictions

• ROB is essential for implementing out‒of‒order execution and speculation.

39. What is the purpose of branch prediction in modern processors ?

Answer: Branch prediction is used to guess the outcome of branch instructions before the actual result is known. This prevents pipeline stalls caused by control hazards and allows the processor to continue fetching and executing instructions, thereby increasing Instruction‒Level Parallelism (ILP). Accurate branch prediction reduces wasted cycles and improves performance.

40. What are true data dependencies (RAW), and why do they limit ILP?

Answer: True data dependencies, also called Read After Write (RAW) hazards, occur when an instruction requires the result of a previous instruction. Since the dependent instruction must wait for the earlier one to finish, these dependencies cannot be eliminated by hardware. They fundamentally restrict how many instructions can be executed in parallel, thus limiting ILP.

41. Why can real processors not achieve the ILP of an ideal processor ?

Answer: Real processors have limited hardware resources such as a finite number of ALUs, FPUs, register rename entries, and small instruction windows. Additionally, memory delays, cache misses, and branch mispredictions reduce performance. Designing very wide superscalar processors is costly, complex and consumes high power. Hence, real ILP remains far below theoretical maximums.

42. What modern trends have emerged due to the limited growth of ILP ?

Answer: Because ILP improvements show diminishing returns, modern processors now focus on other forms of parallelism, such as:

Multicore processors : Multiple independent cores on a single chip

Simultaneous Multithreading (SMT): Running instructions from multiple threads on one core

Vector units (SIMD) : Executing operations on multiple data elements in parallel

These techniques provide greater performance gains than relying only on ILP.

43. What is multithreading?

Answer: A mechanism by which the instruction streams is divided into several smaller streams (threads) and can be executed in parallel is called multithreading.

44. What is hardware multithreading?

Answer: Increasing utilization of a processor by switching to another thread when one tread is stalled is called hardware multithreading.

45. What is thread ?

 Answer: In multithreading, the instruction stream is divided into several smaller streams, called threads, such that the threads can be executed in parallel.

A thread includes the program counter, stack pointer and its own area for a stack. It executes sequentially and can be interrupted to transfer control to an another thread.

46. What is process?

Answer: A process is an instance of a program running on a computer.

47. What is process switch?

Answer: A process switch is an operation that switches the process or control from one process to another. It first saves all the process control data, registers and other information and then replaces them with the process information for the second.

48. What is thread switch?

Answer: A thread switch is an operation that switches the processor control from one thread to another within the same process. This is cheaper than a process switch.

49. Give the comparison between process switch and thread switch.


Process switch

1. It is an operation that switches the process or control from one process to another.

2. When the processor control is transferred from one process to another, the control or ownership of resources is also transferred. So process switch is time consuming than thread switch.

3. It is much costly than a thread switch.

Thread switch

1. It is an operation that switches the processor control from one thread to another thread.

2. The multiple threads within a process share the same resources. So a thread switch is much less time consuming than a process switch.

3. It is much less costly than process switch.

50. What are explicit threads ?

Answer: User level threads which are visible to the application program and kernel‒level threads which are visible only to operating system, both are referred to as explicit threads.

51. What do you mean by implicit multithreading?

Answer: Implicit multithreading refers to the concurrent execution of multiple threads extracted from a single sequential program.

52. What do you mean by explicit multithreading?

Answer: Explicit multithreading refers to the concurrent execution of instructions from different explicit threads, either by interleaving instructions from different threads on shared pipelines or by parallel execution on parallel pipelines.

53. Define interleaved or fine‒grained multithreading.

Answer: A version of hardware multithreading that suggests switching between threads after every instruction is called interleaved or fine‒grained multithreading.

54. Define blocked or coarse‒grained multithreading.

Answer:

A version of hardware multithreading that suggests switching between threads only after significant events, such as a cache miss is called blocked or coarse‒grained multithreading.

55. Define simultaneous multithreading (SMT).

Answer: A version of multithreading that lowers the cost of multithreading by utilizing the resources needed for multiple issue (dynamically schedule microarchitecture) is called simultaneous multithreading (SMT).

56. What is chip multiprocessing ?

Answer: The processor is replicated on a single chip and each processor executes separate threads. This approach effectively utilizes the available logic data on a chip without increasing pipeline design complexity. This is referred to as chip multiprocessing.

 

Computer Organization and Architecture: Chapter 5: Advanced ILP and Parallel Processing : Tag: Computer : Computer Organization and Architecture - Advanced ILP and Parallel Processing: Two Marks Important Questions and Answers


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