- Trending Categories
- Data Structure
- Operating System
- C Programming
- Social Studies
- Fashion Studies
- Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Types of Parallelism in Processing Execution
Data Parallelism means concurrent execution of the same task on each multiple computing core.
Let’s take an example, summing the contents of an array of size N. For a single-core system, one thread would simply sum the elements  . . . [N − 1]. For a dual-core system, however, thread A, running on core 0, could sum the elements  . . . [N/2 − 1] and while thread B, running on core 1, could sum the elements [N/2] . . . [N − 1]. So the Two threads would be running in parallel on separate computing cores.
Task Parallelism means concurrent execution of the different task on multiple computing cores.
Consider again our example above, an example of task parallelism might involve two threads, each performing a unique statistical operation on the array of elements. Again The threads are operating in parallel on separate computing cores, but each is performing a unique operation.
Bit-level parallelism is a form of parallel computing which is based on increasing processor word size. In this type of parallelism, with increasing the word size reduces the number of instructions the processor must execute in order to perform an operation on variables whose sizes are greater than the length of the word.
E.g., consider a case where an 8-bit processor must add two 16-bit integers. First the 8 lower-order bits from each integer were must added by processor, then add the 8 higher-order bits, and then two instructions to complete a single operation. A processor with 16- bit would be able to complete the operation with single instruction.
Instruction-level parallelism means the simultaneous execution of multiple instructions from a program. While pipelining is a form of ILP, we must exploit it to achieve parallel execution of the instructions in the instruction stream.
for (i=1; i<=100; i= i+1) y[i] = y[i] + x[i];
This is a parallel loop. Every iteration of the loop can overlap with any other iteration, although within each loop iteration there is little opportunity for overlap.
- What are the types of Parallelism in Computer Architecture?
- Data parallelism vs Task parallelism
- Thread-based parallelism in C#
- Thread-based parallelism in Python
- What are the different levels of Parallelism?
- What are the conditions of Parallelism in Computer Architecture?
- Difference between Concurrency and Parallelism
- What are different methods of parallelism in Parallel Computer Architecture?
- Difference between Batch Processing and Stream Processing
- Information Processing Theories of Intelligence
- Image processing in Python?
- Bit-processing group in 8051
- Parallel Data Processing in Java
- XML Processing Modules in Python
- Execution of printf with ++ operators in C