发明名称 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.
申请公布号 US9606834(B2) 申请公布日期 2017.03.28
申请号 US201514754436 申请日期 2015.06.29
申请人 Imagination Technologies Limited 发明人 Jackson Hugh;Rowland Paul
分类号 G06F9/46;G06F9/50;G06F9/00;G06F9/30;G06F9/38;H03M1/00;G06F9/48;G06F9/52 主分类号 G06F9/46
代理机构 Vorys, Sater, Seymour and Pease LLP 代理人 Vorys, Sater, Seymour and Pease LLP ;DeLuca Vincent M
主权项 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