SEPARATE TRACKING OF PENDING LOADS AND STORES
    731.
    发明申请

    公开(公告)号:US20180246724A1

    公开(公告)日:2018-08-30

    申请号:US15442412

    申请日:2017-02-24

    Abstract: Systems, apparatuses, and methods for maintaining separate pending load and store counters are disclosed herein. In one embodiment, a system includes at least one execution unit, a memory subsystem, and a pair of counters for each thread of execution. In one embodiment, the system implements a software based approach for managing dependencies between instructions. In one embodiment, the execution unit(s) maintains counters to support the software-based approach for managing dependencies between instructions. The execution unit(s) are configured to execute instructions that are used to manage the dependencies during run-time. In one embodiment, the execution unit(s) execute wait instructions to wait until a given counter is equal to a specified value before continuing to execute the instruction sequence.

    DIVISION USING THE NEWTON-RAPHSON METHOD
    732.
    发明申请

    公开(公告)号:US20180246700A1

    公开(公告)日:2018-08-30

    申请号:US15442144

    申请日:2017-02-24

    Inventor: Nicolai Hähnle

    CPC classification number: G06F7/52 G06F7/487 G06F7/535 G06F17/17 G06F2207/5355

    Abstract: Systems, apparatuses, and methods for performing a division operation are disclosed. In one embodiment, a processor includes at least one arithmetic logic unit and a register file. In response to detecting a request to perform a division operation between a dividend and a divisor, the processor generates an initial approximation of the reciprocal of the divisor. Then, the processor converts the initial approximation of the reciprocal of the divisor into a fractional fixed point representation. The processor also introduces a small error into the initial approximation of the reciprocal of the divisor. Then, the processor implements one or more Newton-Raphson iterations for refining the approximation of the reciprocal and then multiplies the final reciprocal value by the dividend to generate the quotient.

    ALLOCATION OF MEMORY BUFFERS IN COMPUTING SYSTEM WITH MULTIPLE MEMORY CHANNELS

    公开(公告)号:US20180239722A1

    公开(公告)日:2018-08-23

    申请号:US15958805

    申请日:2018-04-20

    CPC classification number: G06F13/1673 G06F13/1684 Y02D10/14

    Abstract: A method, computer program product, and system are provided for associating one or more memory buffers in a computing system with a plurality of memory channels. The method can include associating a first memory buffer to a first plurality of memory banks, where the first plurality of memory banks spans over a first set of one or more memory channels. Similarly, the method can include associating a second memory buffer to a second plurality of memory banks, where the second plurality of memory banks spans over a second set of one or more memory channels. The method can also include associating a first sequence identifier and a second sequence identifier with the first memory buffer and the second memory buffer, respectively. Further, the method can include accessing the first and second memory buffers based on the first and second sequence identifiers.

    Method and apparatus for compressing addresses

    公开(公告)号:US10042576B2

    公开(公告)日:2018-08-07

    申请号:US15345639

    申请日:2016-11-08

    Abstract: A method and apparatus of compressing addresses for transmission includes receiving a transaction at a first device from a source that includes a memory address request for a memory location on a second device. It is determined if a first part of the memory address is stored in a cache located on the first device. If the first part of the memory address is not stored in the cache, the first part of the memory address is stored in the cache and the entire memory address and information relating to the storage of the first part is transmitted to the second device. If the first part of the memory address is stored in the cache, only a second part of the memory address and an identifier that indicates a way in which the first part of the address is stored in the cache is transmitted to the second device.

    Instruction set architecture and software support for register state migration

    公开(公告)号:US10037267B2

    公开(公告)日:2018-07-31

    申请号:US15299990

    申请日:2016-10-21

    Abstract: Systems, apparatuses, and methods for migrating execution contexts are disclosed. A system includes a plurality of processing units and memory devices. The system is configured to execute any number of software applications. The system is configured to detect, within a first software application, a primitive for migrating at least a portion of the execution context of a source processing unit to a target processing unit, wherein the primitive includes one or more instructions. The execution context includes a plurality of registers. A first processing unit is configured to execute the one or more instructions of the primitive to cause a portion of an execution context of the first processing unit to be migrated to a second processing unit. In one embodiment, executing the primitive instruction(s) causes an instruction pointer value, with an optional offset value, to be sent to the second processing unit.

    Method and apparatus for performing a search operation on heterogeneous computing systems

    公开(公告)号:US10031947B2

    公开(公告)日:2018-07-24

    申请号:US14749063

    申请日:2015-06-24

    Inventor: Mayank Daga

    Abstract: A method and apparatus for performing a top-down Breadth-First Search (BFS) includes performing a first determination whether to convert to a bottom-up BFS. A second determination is performed whether to convert to the bottom-up BFS, based upon the first determination being positive. The bottom-up BFS is performed, based upon the first determination and the second determination being positive. A third determination is made whether to convert from the bottom-up BFS to the top-down BFS, based upon the third determination being positive.

    Fingerprinting of redundant threads using compiler-inserted transformation code

    公开(公告)号:US10013240B2

    公开(公告)日:2018-07-03

    申请号:US15188304

    申请日:2016-06-21

    Inventor: Daniel I. Lowell

    CPC classification number: G06F8/30 G06F8/41 G06F8/454 G06F11/1629 G06F2201/805

    Abstract: A first processing element is configured to execute a first thread and one or more second processing elements are configured to execute one or more second threads that are redundant to the first thread. The first thread and the one or more second threads are to selectively bypass one or more comparisons of results of operations performed by the first thread and the one or more second threads depending on whether an event trigger for the comparison has occurred a configurable number of times since a previous comparison of previously encoded values of the results. In some cases the comparison can be performed based on hashed (or encoded) values of the results of a current operation and one or more previous operations.

Patent Agency Ranking