Emergent Mind

Abstract

Major chip manufacturers have all introduced Multithreaded processors. These processors are used for running a variety of workloads. Efficient resource utilization is an important design aspect in such processors. Depending on the workload, mis-speculated execution can severely impact resource utilization and power utilization. In general, compared to a uniprocessor, a multithreaded processor may have better tolerance towards mis-speculation. However there can still be phases where even a multi-threaded processor performance may get impacted by branch induced mis-speculation. In this paper I propose monitoring the branch predictor behavior of various hardware threads running on the multi-threaded processor and use that information as a feedback to the thread arbiter/picker which schedules the next thread to fetch instructions from. If I find that a particular thread is going through a phase where it is consistently mis-predicting its branches and its average branch misprediction stall is above a specific threshold then I temporarily reduce the priority for picking that thread. I do a qualitative comparison of various solutions to the problem of resource inefficiency caused due to mis-speculated branches in multithreaded processors. This work can be extended by doing a quantitative evaluation.

We're not able to analyze this paper right now due to high demand.

Please check back later (sorry!).

Generate a summary of this paper on our Pro plan:

We ran into a problem analyzing this paper.

Newsletter

Get summaries of trending comp sci papers delivered straight to your inbox:

Unsubscribe anytime.