Fine-grained vs Coarse-grained multithreading Joel Kamdem Teto Fine-grained vs Coarse-grained multithreading
What is multithreading ? z What is multithreading ? Types of multithreading ? Introduction
Fine-grained Multithreading The ability of a single core to handle multiple thread by: Providing a register for each thread Dividing the pipeline bandwidth into N part Executing one thread different at every execution cycle
Fine-grained multithreading The Advantages provided by such architecture are : fairness of resources Easiness to implement High processor utilization (In case of many thread)
Fine-grained multithreading Some Disadvantage link to this architecture are: Complicated hardware Multiple contexts (states) to keep in memory limits single thread performance Costly
Fine-grained multithreading z Fine-grained multithreading Architecture of a pipeline Program counter for each threads A thread selector for context switch General purpose Registers for each thread
Fine-grained Multithreading z z Fine-grained Multithreading
Coarse-grained Multithreading definition
Coarse-grained Multithreading Advantages decreases vertical waste supports long latency Does not sacrifice single-thread performance There is less hardware duplicate.
Coarse-grained Multithreading Disadvantages Load imbalance Possible context switch overhead Inefficient with a big number of threads along with short latency
z z SUMMARY
Thank you.