Asymmetric clustering of microarchitectures through dynamic-selective shutdown and sharing of functional units - Tan, Wilson Mazo
Designs for clustered microarchitecture have involved symmetric clusters that feature the same number of processing elements or units. These designs also relied solely on static or dynamic instruction distribution algorithms to minimize intercluster communications and maximize cluster load balancing. However some processing loads may benefit from assymetric clustering, or clustered microarchitectures that feature clusters with different numbers of processing elements. Strict adherence to a symmetric clustering setup may also provide as a deterrent to a successful cluster load balancing and provide additional workload to instruction distribution algorithms. This thesis involves the study of a novel technique called Dynamic-Selective Functional Unit Shutdown and Sharing, which dynamically induces assymetry in a clustered microarchitecture. The introduction of this capability adds a flexibility which could be used in improving system performance, as well as curbing power consumption. To control such a capability, we introduced the concept of Cluster Configuration Change Scheduling Algorithms (CCCSA), of which we implemented two specific variations for this study: Periodic and Hysteresis0based. Simulation results showed that our technique was successful in improving the average functional unit contention by up to 40 percent, mostly in setups featuring the Hysteresis-based CCCSA on floating point benchmarks. Such metric improvement translated to an overall system performance (CPI) improvement of uo to 4 percent. We were able to save power, although our attempts mostly ended in worsening the functional unit contention and subsequently, the CPI, or overall performance. The Hysteresis-based CCCSA achieved twice as much power savings over the Periodic CCCSA, with four time less CPI degradation.