-
Thread Clustering - [康朴塔散思]
2009-06-25
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://damocles.blogbus.com/logs/41493591.html
http://www.eecg.toronto.edu/~tamda/papers/threadclustering.pdf
1. Monitoring Stall Breakdown: Using HPCs, CPU stall cycles are broken down and charged to different microprocessor components to determine whethercross-chip communication is performance limiting. If this is the case, then the second phase is entered.
2. Detecting Sharing Patterns: The sharing pattern between threads is tracked by using the data sampling features of the hardware PMU. For each thread, a summary vector, called shMap, is created that provides a signature of data regions accessed by the thread that resulted in cross-chip communication.
3. Thread Clustering: Once sufficient data samples are collected, the shMaps are analyzed. If threads have a high degree of data sharing then they will have similar shMaps and as a result, they will be placed into the same cluster.
4. Thread Migration: The OS scheduler attempts to migrate threads so that threads of the same cluster are as close together as possible.
随机文章:
What are threads (user/kernel)? 2008-09-13Handle the Easy libcurl 2009-02-04Token Pasting (##) 2008-10-14
收藏到:Del.icio.us









