-
公开(公告)号:US10379864B2
公开(公告)日:2019-08-13
申请号:US15390588
申请日:2016-12-26
Applicant: Intel Corporation
Inventor: Chunhui Zhang , Seth H. Pugsley , Mark J. Dechene
Abstract: In an embodiment, a processor comprises a prefetch history array and a prefetch circuit. The prefetch history array comprises a plurality of entries corresponding to prefetch addresses, each entry of the plurality of entries comprising a sublength value associated with a frequency that a stride is repeated. The prefetch circuit is to: for each entry of the plurality of entries, adjust the sublength value based on stride matches for an address of the entry; adjust a short stream counter based on the sublength values of the plurality of entries in the prefetch history array; determine whether the short stream counter has exceeded a throttling threshold; and in response to a determination that the short stream counter has exceeded the throttling threshold, throttle a prefetch level of the prefetch circuit. Other embodiments are described and claimed.
-
公开(公告)号:US10761844B2
公开(公告)日:2020-09-01
申请号:US16023407
申请日:2018-06-29
Applicant: Intel Corporation
Inventor: Manjunath Shevgoor , Mark J. Dechene , Stanislav Shwartsman , Pavel I. Kryukov
IPC: G06F9/30 , G06F9/38 , G06F12/1027
Abstract: Disclosed embodiments relate to predicting load data. In one example, a processor a pipeline having stages ordered as fetch, decode, allocate, write back, and commit, a training table to store an address, predicted data, a state, and a count of instances of unchanged return data, and tracking circuitry to determine, during one or more of the allocate and decode stages, whether a training table entry has a first state and matches a fetched first load instruction, and, if so, using the data predicted by the entry during the execute stage, the tracking circuitry further to update the training table during or after the write back stage to set the state of the first load instruction in the training table to the first state when the count reaches a first threshold.
-
公开(公告)号:US10228956B2
公开(公告)日:2019-03-12
申请号:US15282266
申请日:2016-09-30
Applicant: Intel Corporation
Inventor: Vineeth Mekkat , Mark J. Dechene , Zhongying Zhang , Jason Agron , Sebastian Winkel
Abstract: In one implementation, a processing device is provided that includes a memory to store instructions and a processor core to execute the instructions. The processor core is to receive a sequence of instructions reordered by a binary translator for execution. A first load of the sequence of instructions is identified. The first load references a memory location that stores a data item to be loaded. An occurrence of a second load is detected. The second load to access the memory location subsequent to an execution of the first load instruction. A protection field in the first load is enabled based on the detected occurrence of the second load. The enabled protection field indicates that the first load is to be checked for an aliasing associated with the memory location with respect to a subsequent store instruction. The second load is eliminated based on the enabled of the protection field.
-
公开(公告)号:US20180095765A1
公开(公告)日:2018-04-05
申请号:US15282266
申请日:2016-09-30
Applicant: Intel Corporation
Inventor: Vineeth Mekkat , Mark J. Dechene , Zhongying Zhang , Jason Agron , Sebastian Winkel
CPC classification number: G06F9/455 , G06F8/443 , G06F8/4432 , G06F8/4434 , G06F8/4435 , G06F8/445 , G06F8/52 , G06F9/30043 , G06F9/30145 , G06F9/3017 , G06F9/30181 , G06F9/30185 , G06F9/3834
Abstract: In one implementation, a processing device is provided that includes a memory to store instructions and a processor core to execute the instructions. The processor core is to receive a sequence of instructions reordered by a binary translator for execution. A first load of the sequence of instructions is identified. The first load references a memory location that stores a data item to be loaded. An occurrence of a second load is detected. The second load to access the memory location subsequent to an execution of the first load instruction. A protection field in the first load is enabled based on the detected occurrence of the second load. The enabled protection field indicates that the first load is to be checked for an aliasing associated with the memory location with respect to a subsequent store instruction. The second load is eliminated based on the enabled of the protection field.
-
公开(公告)号:US09495159B2
公开(公告)日:2016-11-15
申请号:US14040016
申请日:2013-09-27
Applicant: INTEL CORPORATION
Inventor: Mark J. Dechene , Srikanth T. Srinivasan , Matthew C. Merten , Tong Li , Christine E. Wang
CPC classification number: G06F9/30145 , G06F8/445 , G06F8/47 , G06F9/30123 , G06F9/384 , G06F9/3842 , G06F9/3851 , G06F9/3855 , G06F9/3859 , G06F9/3863 , G06F9/3877 , G06F9/3887 , G06F9/45508 , G06F9/461
Abstract: In response to detecting one or more conditions are met, a checkpoint of a current state of a thread may be created. One or more incomplete instructions may be moved from a first level of a re-order buffer to a second level of the re-order buffer. Each incomplete instruction may be currently executing or awaiting execution.
Abstract translation: 响应于检测到一个或多个条件被满足,可以创建线程的当前状态的检查点。 可以将一个或多个不完整的指令从重新排序缓冲器的第一级移动到重新排序缓冲器的第二级。 每个不完整的指令可能正在执行或等待执行。
-
-
-
-