发明名称 |
Allocating Resources to Threads Based on Speculation Metric |
摘要 |
Methods, reservation stations and processors for allocating resources to a plurality of threads based on the extent to which the instructions associated with each of the threads are speculative. The method comprises receiving a speculation metric for each thread at a reservation station. Each speculation metric represents the extent to which the instructions associated with a particular thread are speculative. The more speculative an instruction, the more likely the instruction has been incorrectly predicted by a branch predictor. The reservation station then allocates functional unit resources (e.g. pipelines) to the threads based on the speculation metrics and selects a number of instructions from one or more of the threads based on the allocation. The selected instructions are then issued to the functional unit resources. |
申请公布号 |
US2015301863(A1) |
申请公布日期 |
2015.10.22 |
申请号 |
US201514754436 |
申请日期 |
2015.06.29 |
申请人 |
Imagination Technologies Limited |
发明人 |
Jackson Hugh;Rowland Paul |
分类号 |
G06F9/50;G06F9/30 |
主分类号 |
G06F9/50 |
代理机构 |
|
代理人 |
|
主权项 |
1. A method of allocating resources between a plurality of threads in a processor, the method comprising:
receiving at a speculation metric calculator a confidence value for each of a plurality of instructions, each instruction being associated with one of the plurality of threads, each confidence value representing the likelihood that the instruction has been correctly predicted; generating at the speculation metric calculator a speculation metric for each thread based on the confidence values, each speculation metric representing the extent to which the instructions associated with the thread are speculative, comprising:
adding a confidence value for an instruction associated with a thread to the speculation metric for that thread once that confidence value has been received; andsubtracting that confidence value from the speculation metric for that thread once that instruction has been executed; providing the speculation metrics from the speculation metric calculator to a reservation station; and allocating functional unit resources to the plurality of threads at the reservation station based on the speculation metrics. |
地址 |
Kings Langley GB |