For Branches, E.g., Hedging Branch Folding (epo) Patents (Class 712/E9.056)
-
Patent number: 12248789Abstract: Techniques are provided for executing wavefronts. The techniques include at a first time for issuing instructions for execution, performing first identifying, including identifying that sufficient processing resources exist to execute a first set of instructions together within a processing lane; in response to the first identifying, executing the first set of instructions together; at a second time for issuing instructions for execution, performing second identifying, including identifying that no instructions are available for which sufficient processing resources exist for execution together within the processing lane; and in response to the second identifying, executing an instruction independently of any other instruction.Type: GrantFiled: April 28, 2023Date of Patent: March 11, 2025Assignee: Advanced Micro Devices, Inc.Inventor: Maxim V. Kazakov
-
Patent number: 12217061Abstract: Techniques are provided for executing wavefronts. The techniques include at a first time for issuing instructions for execution, performing first identifying, including identifying that sufficient processing resources exist to execute a first set of instructions together within a processing lane; in response to the first identifying, executing the first set of instructions together; at a second time for issuing instructions for execution, performing second identifying, including identifying that no instructions are available for which sufficient processing resources exist for execution together within the processing lane; and in response to the second identifying, executing an instruction independently of any other instruction.Type: GrantFiled: April 28, 2023Date of Patent: February 4, 2025Assignee: Advanced Micro Devices, Inc.Inventor: Maxim V. Kazakov
-
Patent number: 12183099Abstract: Systems and techniques for facilitating detection of data duplication issues relating to generation of non-fungible tokens are provided. In various embodiments, a computer system can access a digital artwork image. In various aspects, the computer system can generate a set of plagiarism probabilities by comparing the digital artwork image to a set of cached digital artwork images. In various instances, a given plagiarism probability in the set of plagiarism probabilities can indicate a likelihood that the digital artwork image was derived from a given cached digital artwork image in the set of cached digital artwork images. In various cases, the computer system can calculate an authenticity score for the digital artwork image based on the set of plagiarism probabilities. In various aspects, the computer system can determine whether the authenticity score for the digital artwork image satisfies a threshold authenticity value.Type: GrantFiled: October 25, 2021Date of Patent: December 31, 2024Assignee: PayPal, Inc.Inventor: Pankaj Sarin
-
Patent number: 12019555Abstract: A cache system, having: a first cache set; a second cache set; and a logic circuit coupled to a processor to control the caches based on at least respective first and second registers. When a connection to an address bus receives a memory address from the processor, the logic circuit is configured to: generate a set index from at least the address; and determine whether the generated set index matches with a content stored in the first register or with a content stored in the second register. And, the logic circuit is configured to implement a command via the first cache set in response to the generated set index matching with the content stored in the first register and via the second cache set in response to the generated set index matching with the content stored in the second register.Type: GrantFiled: June 9, 2022Date of Patent: June 25, 2024Assignee: Micron Technology, Inc.Inventor: Steven Jeffrey Wallach
-
Patent number: 12007909Abstract: An elastic memory system that may include memory banks, clients that are configured to obtain access requests associated with input addresses; first address converters that are configured to convert the input addresses to intermediate addresses within a linear address space; address scramblers that are configured to convert the intermediate addresses to physical addresses while balancing a load between the memory banks; atomic operation units; an interconnect that is configured to receive modified access requests that are associated with the physical addresses, and send the modified access requests downstream, wherein atomic modified access requests are sent to the atomic operation units; wherein the atomic operations units are configured to execute the atomic modified access requests; wherein the memory banks are configured to respond to the atomic modified access requests and to non-atomic modified access requests.Type: GrantFiled: December 15, 2021Date of Patent: June 11, 2024Assignee: XSIGHT LABS LTD.Inventors: Guy Koren, Gal Malach, Carmi Arad
-
Patent number: 11977491Abstract: A system comprises a processor including a CPU core, first and second memory caches, and a memory controller subsystem. The memory controller subsystem speculatively determines a hit or miss condition of a virtual address in the first memory cache and speculatively translates the virtual address to a physical address. Associated with the hit or miss condition and the physical address, the memory controller subsystem configures a status to a valid state. Responsive to receipt of a first indication from the CPU core that no program instructions associated with the virtual address are needed, the memory controller subsystem reconfigures the status to an invalid state and, responsive to receipt of a second indication from the CPU core that a program instruction associated with the virtual address is needed, the memory controller subsystem reconfigures the status back to a valid state.Type: GrantFiled: April 3, 2023Date of Patent: May 7, 2024Assignee: Texas Instruments IncorporatedInventors: Bipin Prasad Heremagalur Ramaprasad, David Matthew Thompson, Abhijeet Ashok Chachad, Hung Ong
-
Patent number: 11915002Abstract: Providing extended branch target buffer (BTB) entries for storing trunk branch metadata and leaf branch metadata is disclosed herein. In one aspect, a processor comprises a BTB circuit comprising a BTB comprising a plurality of extended BTB entries. The BTB circuit is configured to store trunk branch metadata for a first branch instruction in an extended BTB entry of the plurality of extended BTB entries, wherein the extended BTB entry corresponds to a first aligned memory block containing an address of the first branch instruction. The BTB circuit is also configured to store leaf branch metadata for a second branch instruction in the extended BTB entry in association with the trunk branch metadata, wherein an address of the second branch instruction is subsequent to a target address of the first branch instruction within a second aligned memory block.Type: GrantFiled: June 24, 2022Date of Patent: February 27, 2024Assignee: Microsoft Technology Licensing, LLCInventors: Saransh Jain, Rami Mohammad Al Sheikh, Daren Eugene Streett, Michael Scott McIlvaine
-
Patent number: 11797673Abstract: A superscalar out-of-order speculative execution microprocessor mitigates side channel attacks that attempt to exploit speculation windows within which instructions dependent in their execution upon a result of a load instruction may speculatively execute before being flushed because the load instruction raises an architectural exception. A load unit signals an abort request, among other potential abort requests, to control logic in response to detecting that a load instruction causes a need for an architectural exception. The control logic initiates an abort process as soon as the control logic determines that the abort request from the load unit is highest priority among any other concurrently received abort requests and determines a location of the exception-causing load instruction within the program order of outstanding instructions. To perform the abort process, the control logic flushes from the pipeline all instructions dependent upon a result of the exception-causing load instruction.Type: GrantFiled: March 17, 2021Date of Patent: October 24, 2023Assignee: Ventana Micro Systems Inc.Inventors: John G Favor, Srivatsan Srinivasan
-
Patent number: 11789742Abstract: Techniques related to executing a plurality of instructions by a processor comprising a method for executing a plurality of instructions by a processor. The method comprises detecting a pipeline hazard based on one or more instructions provided for execution by an instruction execution pipeline, beginning execution of an instruction, of the one or more instructions on the instruction execution pipeline, stalling a portion of the instruction execution pipeline based on the detected pipeline hazard, storing a register state associated with the execution of the instruction based on the stalling, determining that the pipeline hazard has been resolved, and restoring the register state to the instruction execution pipeline based on the determination.Type: GrantFiled: March 7, 2022Date of Patent: October 17, 2023Assignee: Texas Instruments IncorporatedInventors: Timothy D. Anderson, Duc Bui, Joseph Zbiciak, Reid E. Tatge
-
Patent number: 11775313Abstract: An accelerator for processing of a convolutional neural network (CNN) includes a compute core having a plurality of compute units. Each compute unit includes a first memory cache configured to store at least one vector in a map trace, a second memory cache configured to store at least one vector in a kernel trace, and a plurality of vector multiply-accumulate units (vMACs) connected to the first and second memory caches. Each vMAC includes a plurality of multiply-accumulate units (MACs). Each MAC includes a multiplier unit configured to multiply a first word that of the at least one vector in the map trace by a second word of the at least one vector in the kernel trace to produce an intermediate product, and an adder unit that adds the intermediate product to a third word to generate a sum of the intermediate product and the third word.Type: GrantFiled: May 25, 2018Date of Patent: October 3, 2023Assignee: Purdue Research FoundationInventors: Eugenio Culurciello, Vinayak Gokhale, Aliasger Zaidy, Andre Chang
-
Patent number: 11768688Abstract: Methods and circuitry for efficient management of local branch history registers are described. An example processor includes a pipeline comprising a plurality of stages and a bit-vector associated with each of in-flight branches associated with the pipeline. The processor includes a recovery counter for tracking a number of bits needing recovery before a local branch history register is valid for participation in branch prediction. The processor includes branch predictor circuitry configured to, in response to an update of a local branch history register by a branch, set a bit in a corresponding bit-vector indicative of the update of the local branch history register. The branch predictor circuitry is configured to, upon a flush, determine a value indicative of an extent of recovery required for each local branch history register affected by the flush, and set a corresponding recovery counter to the value indicative of the extent of recovery required.Type: GrantFiled: June 2, 2022Date of Patent: September 26, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Rami Mohammad Al Sheikh, Ahmed Helmi Mahmoud Osman Abulila, Daren Eugene Streett, Michael Scott McIlvaine
-
Patent number: 11720367Abstract: A method performed in a processor, includes: receiving, in the processor, a branch instruction in the processing; determining, by the processor, an address of an instruction after the branch instruction as a candidate for speculative execution, the address including an object identification and an offset; and determining, by the processor, whether or not to perform speculative execution of the instruction after the branch instruction based on the object identification of the address.Type: GrantFiled: March 29, 2022Date of Patent: August 8, 2023Inventor: Steven Jeffrey Wallach
-
Patent number: 11599634Abstract: A method or apparatus detects a memory corruption of at least one portion of memory during run-time and corrects the memory corruption of the at least one portion of memory by replacing the at least one portion of memory with a backup of the at least one portion of memory. In this way, memory corruption can be corrected in a timely fashion while minimizing security risks.Type: GrantFiled: January 29, 2019Date of Patent: March 7, 2023Assignee: Virsec Systems, Inc.Inventors: Satya V. Gupta, Prashant Shenoy
-
Patent number: 10628167Abstract: A new layer for runtime detection of vendor hooks, with respect to a program module, includes mapping of branching instructions and their respective targets. When the program module is compiled, branch instructions are mapped and recorded to generate one or more branch maps. A branch map includes target program module addresses (or associated respective placeholders) and respective instruction offsets. At runtime, placeholders are replaced with respective target program module addresses. At runtime, actual branching information is compared to branching information included in the branch map. If a discrepancy is detected between runtime branching information and the corresponding branching information recorded in the branch map, a responsive action is triggered.Type: GrantFiled: February 21, 2018Date of Patent: April 21, 2020Assignee: International Business Machines CorporationInventors: Thomas C. Reed, Kenneth J. Owin, Joseph V. Malinowski, David C. Reed