Patents by Inventor Niranjan Soundararajan

Niranjan Soundararajan has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20230418757
    Abstract: Techniques and mechanisms for selectively increasing or decreasing an amount of cache resources which are to be available for use in the provisioning of decoded micro-operations in a processor. In an embodiment, a processor core comprises both a first cache which is dedicated to caching micro-operations, and a second cache which is coupled to receive data, or non-decoded instructions. The core further comprises circuitry to monitor one or more cache performance characteristics of the core. Based on the one or more cache performance characteristics, the circuitry performs an evaluation to determine whether to increase—or alternatively, to decrease—the size of a pool of one or more caches which are to be available to receive micro-operations. In another embodiment, the second cache is added to the pool based on an indication of an overutilization of the first cache.
    Type: Application
    Filed: June 22, 2022
    Publication date: December 28, 2023
    Applicant: Intel Corporation
    Inventors: Niranjan Soundararajan, Sreenivas Subramoney, Vishal Gupta, Neelu Shivprakash Kalani
  • Publication number: 20230103206
    Abstract: In an embodiment, a processor may include an execution circuit to execute a plurality of instructions, a cache, and a decode circuit. The decode circuit may be to: detect a branch instruction in a program, the branch instruction to cause execution to follow either a first path or a second path in the program; and in response to a determination that the branch instruction is a hard to predict (HTP) branch, cause first and second sets of instructions to be stored in the cache, where the first set of instructions is included in the first path, and where the second set of instructions is included in the second path. Other embodiments are described and claimed.
    Type: Application
    Filed: September 24, 2021
    Publication date: March 30, 2023
    Inventors: Niranjan Soundararajan, Sreenivas Subramoney, Neelu Shivprakash Kalani, Vishal Gupta
  • Publication number: 20220197650
    Abstract: An embodiment of an integrated circuit may comprise a core, a front end unit coupled to the core to decode one or more instruction wherein the front end unit includes a first decode path, a second decode path, and circuitry to: predict a taken branch of a conditional branch instruction of the one or more instructions, decode a predicted path of the taken branch on the first decode path, determine if the conditional branch instruction corresponds to a hard-to-predict conditional branch instruction and if the second decode path is available and, if so determined, decode an alternate path of a not-taken branch of the hard-to-predict conditional branch instruction on the second decode path. Other embodiments are disclosed and claimed.
    Type: Application
    Filed: December 22, 2020
    Publication date: June 23, 2022
    Applicant: Intel Corporation
    Inventors: Niranjan Soundararajan, Sreenivas Subramoney
  • Patent number: 11321089
    Abstract: Methods and apparatuses relating to instruction set architecture (ISA) based and automatic load tracking hardware for opportunistic re-steer of data-dependent flaky branches are described.
    Type: Grant
    Filed: June 27, 2020
    Date of Patent: May 3, 2022
    Assignee: Intel Corporation
    Inventors: Saurabh Gupta, Niranjan Soundararajan, Ragavendra Natarajan, Sreenivas Subramoney
  • Publication number: 20210326139
    Abstract: Methods and apparatuses relating to instruction set architecture (ISA) based and automatic load tracking hardware for opportunistic re-steer of data-dependent flaky branches are described.
    Type: Application
    Filed: June 27, 2020
    Publication date: October 21, 2021
    Inventors: SAURABH GUPTA, NIRANJAN SOUNDARARAJAN, RAGAVENDRA NATARAJAN, SREENIVAS SUBRAMONEY
  • Patent number: 10949208
    Abstract: In one embodiment, an apparatus includes a context-based prediction circuit to receive an instruction address for a branch instruction and a plurality of predictions associated with the branch instruction from a global prediction circuit. The context-based prediction circuit may include: a table having a plurality of entries each to store a context prediction value for a corresponding branch instruction; and a control circuit to generate, for the branch instruction, an index value to index into the table, the control circuit to generate the index value based at least in part on at least some of the plurality of predictions associated with the branch instruction and the instruction address for the branch instruction. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 17, 2018
    Date of Patent: March 16, 2021
    Assignee: Intel Corporation
    Inventors: Saurabh Gupta, Niranjan Soundararajan, Ragavendra Natarajan, Jared Warner Stark, IV, Lihu Rappoport, Sreenivas Subramoney
  • Publication number: 20200192670
    Abstract: In one embodiment, an apparatus includes a context-based prediction circuit to receive an instruction address for a branch instruction and a plurality of predictions associated with the branch instruction from a global prediction circuit. The context-based prediction circuit may include: a table having a plurality of entries each to store a context prediction value for a corresponding branch instruction; and a control circuit to generate, for the branch instruction, an index value to index into the table, the control circuit to generate the index value based at least in part on at least some of the plurality of predictions associated with the branch instruction and the instruction address for the branch instruction. Other embodiments are described and claimed.
    Type: Application
    Filed: December 17, 2018
    Publication date: June 18, 2020
    Inventors: Saurabh Gupta, Niranjan Soundararajan, Ragavendra Natarajan, Jared Warner Stark, IV, Lihu Rappoport, Sreenivas Subramoney
  • Patent number: 10664281
    Abstract: Methods and apparatuses relating to dynamic asymmetric scaling of branch predictor tables are described. Branch predictor circuits to perform dynamic asymmetric scaling of branch predictor tables are also described.
    Type: Grant
    Filed: September 29, 2018
    Date of Patent: May 26, 2020
    Assignee: INTEL CORPORATION
    Inventors: Ragavendra Natarajan, Niranjan Soundararajan, Saurabh Gupta, Sreenivas Subramoney
  • Patent number: 10642621
    Abstract: In one embodiment, a branch prediction circuit includes: a first bimodal predictor having a first plurality of entries each to store first prediction information for a corresponding branch instruction; a global predictor having a plurality of global entries each to store global prediction information for a corresponding branch instruction; a second bimodal predictor having a second plurality of entries each to store second prediction information for a corresponding branch instruction; a monitoring table having a plurality of monitoring entries each to store a counter value based on the second prediction information for a corresponding branch instruction; and a control circuit to allocate a global entry within the global predictor based at least in part on the counter value of a monitoring entry of the monitoring table for a corresponding branch instruction. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 29, 2017
    Date of Patent: May 5, 2020
    Assignee: Intel Corporation
    Inventors: Ragavendra Natarajan, Niranjan Soundararajan, Sreenivas Subramoney
  • Patent number: 10430198
    Abstract: One embodiment provides an apparatus. The apparatus includes a store direct dependent (SDD) branch prediction circuitry and an SDD management circuitry. The store direct dependent (SDD) branch prediction circuitry is to store an SDD branch table. The SDD branch table is to store at least one record. Each record includes a branch instruction pointer (IP) field, a load IP field, a store IP field, a comparison info field and at least one of a store value field and/or a predicted outcome field. The SDD management circuitry is to populate the SDD branch table at runtime and to override a baseline branch prediction associated with an incoming branch IP with an SDD branch prediction, if the SDD branch table contains a first record populated with the incoming branch IP and at least one of a store value and/or an SDD predicted outcome.
    Type: Grant
    Filed: January 12, 2018
    Date of Patent: October 1, 2019
    Assignee: Intel Corporation
    Inventors: Saurabh Gupta, Rahul Pal, Niranjan Soundararajan, Ragavendra Natarajan, Sreenivas Subramoney
  • Publication number: 20190220284
    Abstract: One embodiment provides an apparatus. The apparatus includes a store direct dependent (SDD) branch prediction circuitry and an SDD management circuitry. The store direct dependent (SDD) branch prediction circuitry is to store an SDD branch table. The SDD branch table is to store at least one record. Each record includes a branch instruction pointer (IP) field, a load IP field, a store IP field, a comparison info field and at least one of a store value field and/or a predicted outcome field. The SDD management circuitry is to populate the SDD branch table at runtime and to override a baseline branch prediction associated with an incoming branch IP with an SDD branch prediction, if the SDD branch table contains a first record populated with the incoming branch IP and at least one of a store value and/or an SDD predicted outcome.
    Type: Application
    Filed: January 12, 2018
    Publication date: July 18, 2019
    Applicant: Intel Corporation
    Inventors: Saurabh Gupta, Rahul Pal, Niranjan Soundararajan, Ragavendra Natarajan, Sreenivas Subramoney
  • Publication number: 20190205143
    Abstract: In one embodiment, a branch prediction circuit includes: a first bimodal predictor having a first plurality of entries each to store first prediction information for a corresponding branch instruction; a global predictor having a plurality of global entries each to store global prediction information for a corresponding branch instruction; a second bimodal predictor having a second plurality of entries each to store second prediction information for a corresponding branch instruction; a monitoring table having a plurality of monitoring entries each to store a counter value based on the second prediction information for a corresponding branch instruction; and a control circuit to allocate a global entry within the global predictor based at least in part on the counter value of a monitoring entry of the monitoring table for a corresponding branch instruction. Other embodiments are described and claimed.
    Type: Application
    Filed: December 29, 2017
    Publication date: July 4, 2019
    Inventors: Ragavendra Natarajan, Niranjan Soundararajan, Sreenivas Subramoney
  • Publication number: 20120290793
    Abstract: An apparatus, method, and medium are disclosed for implementing data caching in a computer system. The apparatus comprises a first data cache, a second data cache, and cache logic. The cache logic is configured to cache memory data in the first data cache. Caching the memory data in the first data cache comprises storing the memory data in the first data cache and storing in the second data cache, but not in the first data cache, tag data corresponding to the memory data.
    Type: Application
    Filed: May 10, 2011
    Publication date: November 15, 2012
    Inventors: Jaewoong Chung, Niranjan Soundararajan
  • Publication number: 20120221785
    Abstract: A 3D stacked processor device is described which includes a processor chip and a stacked polymorphic DRAM memory chip connected to the processor chip through a plurality of through-silicon-via structures, where the stacked DRAM memory chip includes a memory with an adjustable memory portion and an adjustable cache portion such that memory can operate simultaneously in both memory and cache modes.
    Type: Application
    Filed: February 28, 2011
    Publication date: August 30, 2012
    Inventors: Jaewoong Chung, Niranjan Soundararajan
  • Patent number: 7849387
    Abstract: In one embodiment, a quantum detector is provided to detect a vulnerability measure for a processor based on a processor metrics each associated with operation of a processor structure during a quantum, along with a controller to control an error mitigation unit based on the vulnerability measure. Other embodiments are described and claimed.
    Type: Grant
    Filed: April 23, 2008
    Date of Patent: December 7, 2010
    Assignee: Intel Corporation
    Inventors: Arijit Biswas, Niranjan Soundararajan, Shubhendu Mukherjee
  • Publication number: 20090271676
    Abstract: In one embodiment, a quantum detector is provided to detect a vulnerability measure for a processor based on a processor metrics each associated with operation of a processor structure during a quantum, along with a controller to control an error mitigation unit based on the vulnerability measure. Other embodiments are described and claimed.
    Type: Application
    Filed: April 23, 2008
    Publication date: October 29, 2009
    Inventors: Arijit Biswas, Niranjan Soundararajan, Shubhendu Mukherjee