Parallel Processing in Computer Architecture YASH PAL, March 6, 2026March 6, 2026 Parallel Processing in Computer Architecture – The computational speed of conventional computers is slow. This speed can be increased by performing simultaneous data processing. This is known as parallel processing. This technique is able to perform concurrent data processing to achieve faster execution. Pipeline processing is a common technique that is used to achieve parallel processing. Pipelining is a technique of decomposing a sequential process into sub-operations. Each sub-operation is executed concurrently in a special dedicated segment with all other segments. The result obtained from the computation in each segment is transferred to the next segment in the pipeline. The final result is obtained after the data have passed through all segments. Pipelining also consists of vector processing, scalar processing, etc. There are so many computational problems that can not be solved by conventional computers. These problems can be formulated in terms of vectors and matrices. This capability of a computer to solve the computational problem is known as vector processing capability. Computers with vector processing capabilities are required in specialized applications. Parallel Processing The term parallel processing indicates that the system can perform several operations simultaneously. Now we will elaborate on the scenario. In a CPU, we will have only one Accumulator, which will store the results of the current operation. Now, if we are giving only one command, such as “a+b”, then the CPU performs the operation and stores the result in the accumulator. Now we are talking about parallel processing, therefore we will be issuing two instructions, “a+b” and “c-d”, at the same time. Now, if the result of the “a+b” operation is stored in the accumulator, then the “c-d” result cannot be stored in the accumulator at the same time. Therefore, the term parallel processing is not only based on the Arithmetic, logic, or shift operations. The above problem can be solved in the following manner. Consider the registers RI and R2, which will be storing the operands before the operation, and R3 is the register that will be storing the results after the operation. Now, the above two instructions, “a+b” and “c-d”, will be done in parallel as follows. Values of “a” and “b” are fetched into the registers R1 and R2. The values of R1 and R2 will be sent into the ALU unit to perform the addition. The result will be stored in the Accumulator. When the ALU unit is performing the calculation, the next data “c” and “d” are brought into R1 and R2. Finally, the value of the Accumulator obtained from “a-b” will be transferred into R3. Next, the values of C and D from R1 and R2 will be brought into the ALU to perform the “c-d” operation. Since the accumulator value of the previous operation is present in R3, the result of “c-d” can be safely stored in the Accumulator. This is the process of parallel processing of only one CPU. Consider several such CPUs performing the calculations separately. This is the concept of parallel processing. Parallel Processing In the above figure One possible way of separating the execution unit into eight functional units operating in parallel. The operands in the registers are applied to one of the units depending on the operation specified by the instruction associated with the operands. The operation performed in each functional unit is indicated in each block of the diagram. We can see that the data stored in the processor registers is being sent to separate devices based on the operation needed on the data. If the data inside the processor registers is requesting an arithmetic operation, then the data will be sent to the arithmetic unit, and if at the same time another data is requested in the logic unit, then the data will be sent to the logic unit for logical operations. Now, at the same time, both arithmetic operations and logical operations are executing in parallel. This is called parallel processing. We consider parallel processing under the following main topics: Pipeline processing: Pipeline processing is an implementation technique where arithmetic suboperations or the phase of a computer instruction cycle overlap in execution. Vector processing: Vector processing deals with computations involving large vectors and matrices. Array processing: An array processor performs computations on large arrays of data. Computer System Architecture engineering subjects Computer System Architecture