Patents by Inventor Srikanth T. Srinivasan

Srikanth T. Srinivasan 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: 20090328057
    Abstract: A device and method may fetch an instruction or micro-operation for execution. An indication may be made as to whether the instruction is dependent upon any source values corresponding to a set of previously fetched instructions. A value may be stored corresponding to each source value from which the first instruction depends. An indication may be made for each of the set of sources of the instruction, whether the source depends on a previously loaded value or source, where indicating may include storing a value corresponding to the indication. The instruction may be executed after the stored values associated with the instruction indicate the dependencies are satisfied.
    Type: Application
    Filed: June 30, 2008
    Publication date: December 31, 2009
    Inventors: Sagi LAHAV, Guy Patkin, Zeev Sperber, Herbert Hum, Shih-Lien Lu, Srikanth T. Srinivasan
  • Publication number: 20090119459
    Abstract: A method and apparatus for a late lock acquire mechanism is herein described. In response to detecting a late-lock acquire event, such as expiration of a timer, a full cachet set, and an irrevocable event, a late-lock acquire may be initiated. Consecutive critical sections are stalled until a late-lock acquire is completed utilizing fields of access buffer entries associated with consecutive critical section operations.
    Type: Application
    Filed: November 7, 2007
    Publication date: May 7, 2009
    Inventors: Haitham Akkary, Ravi Rajwar, Srikanth T. Srinivasan
  • Publication number: 20090063773
    Abstract: A technique to allow independent loads to be satisfied during high-latency instruction processing. Embodiments of the invention relate to a technique in which a storage structure is used to hold store operations in program order while independent load instructions are satisfied during a time in which a high-latency instruction is being processed. After the high-latency instruction is processed, the store operations can be restored in program order without searching the storage structure.
    Type: Application
    Filed: December 16, 2004
    Publication date: March 5, 2009
    Inventors: Ravi Rajwar, Srikanth T. Srinivasan, Haitham Akkary, Amit Gandhi
  • Patent number: 7487337
    Abstract: Embodiments of the present invention relate to a system and method for comparatively increasing processor throughput and relieving pressure on the processor's scheduler and register file by diverting instructions dependent on long-latency operations from a flow of the processor pipeline and re-introducing the instructions into the flow when the long-latency operations are completed. In this way, the instructions do not tie up resources and overall instruction throughput in the pipeline is comparatively increased. Before the instructions are diverted from the pipeline, they may undergo a conventional process to map logical registers of the instructions to physical registers. Before the instructions are re-introduced into the pipeline, the physical registers mapped according to the conventional process may be re-mapped to other physical registers, thereby efficiently preserving correct program sequence information.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: February 3, 2009
    Assignee: Intel Corporation
    Inventors: Haitham Akkary, Ravi Rajwar, Srikanth T. Srinivasan
  • Publication number: 20080115042
    Abstract: A method and apparatus for detecting lock instructions and lock release instruction, as well as predicting critical sections is herein described. A lock instruction is detected with detection logic, which potentially resides in decode logic. A lock instruction entry associated with the lock instruction is stored/created. Address locations and values to be written to those address location of subsequent potential lock release instruction are compared to the address loaded from by the lock instruction and the value load by the lock instruction. If the addresses and values match, it is determined that the lock release instruction matches the lock instruction. A prediction entry stores a reference to the lock instruction, such as a last instruction pointer (LIP), and an associated value to represent the lock instruction is to be elided upon subsequent detection, if it is determined that the lock release instruction matches the lock instruction.
    Type: Application
    Filed: November 13, 2006
    Publication date: May 15, 2008
    Inventors: Haitham Akkary, Ravi Rajwar, Srikanth T. Srinivasan
  • Patent number: 7363477
    Abstract: A method and apparatus for executing a selective recovery after a branch misprediction is disclosed. In one embodiment, the instructions following the mispredicted branch point may be saved for selective re-execution in a buffer. Those instructions that wrote to physical registers between the mispredicted branch point and an exact convergence point, thereby causing false data dependencies, may be followed by corresponding move instructions to eliminate the false data dependencies. The instructions subsequent to the exact convergence point may then be selectively re-executed if subject to the previous false data dependencies.
    Type: Grant
    Filed: December 3, 2003
    Date of Patent: April 22, 2008
    Assignee: Intel Corporation
    Inventors: Srikanth T. Srinivasan, Amit V. Gandhi, Haitham H. Akkary
  • Publication number: 20080065864
    Abstract: A method and apparatus for post-retire transaction access tracking is herein described. Load and store buffers are capable of storing senior entries. In the load buffer a first access is scheduled based on a load buffer entry. Tracking information associated with the load is stored in a filter field in the load buffer entry. Upon retirement, the load buffer entry is marked as a senior load entry. A scheduler schedules a post-retire access to update transaction tracking information, if the filter field does not represent that the tracking information has already been updated during a pendency of the transaction. Before evicting a line in a cache, the load buffer is snooped to ensure no load accessed the line to be evicted.
    Type: Application
    Filed: September 7, 2006
    Publication date: March 13, 2008
    Inventors: Haitham Akkary, Ravi Rajwar, Srikanth T. Srinivasan
  • Patent number: 6848028
    Abstract: A microprocessor cache configuration for reducing database cache misses and improving the processing speed, comprising a level-1 data cache, and a page prefetch cache. The page prefetch cache is adjacent the level-1 data cache. The page prefetch cache is configured to receive and store one or more database pages. Additionally, a page prefetch instruction provides the database pages to the page prefetch cache. The page prefetch instructions are generated by a compiler or by developer software.
    Type: Grant
    Filed: January 5, 2000
    Date of Patent: January 25, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Rabin Sugumar, Srikanth T. Srinivasan, Partha P. Tirumalai
  • Publication number: 20040255104
    Abstract: A method and apparatus for recycling wrong-path branch outcomes in a superscalar single-threaded processor is disclosed. In one embodiment, a branch recycling predictor may be used to determine whether a speculatively executed branch instruction's outcome, coming at the end of a wrong-path branch, may be a better prediction than that given by a traditional branch predictor. In one embodiment, the branch recycling predictor may correlate the previous wrong-path branch outcomes with the previous correct-path branch outcomes. The history of the traditional branch predictor may also be used. The branch recycling predictor may be used to choose between using the traditional branch predictor's prediction, or instead using the wrong-path branch outcome.
    Type: Application
    Filed: June 12, 2003
    Publication date: December 16, 2004
    Applicant: Intel Corporation
    Inventors: Haitham H. Akkary, Srikanth T. Srinivasan
  • Patent number: 6829680
    Abstract: A method for increasing the processing speed of database instructions using a page prefetch cache. More particularly, the method is executed on a microprocessor and reduces database cache misses and improves the processing speed. The method comprises enabling a page prefetch cache with a database application, issuing one or more page prefetch instructions, and determining whether the particular database page is in the page prefetch cache.
    Type: Grant
    Filed: January 5, 2000
    Date of Patent: December 7, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Rabin Sugumar, Srikanth T Srinivasan, Partha P. Tirumalai
  • Publication number: 20040225870
    Abstract: A method and apparatus for reducing wrong path execution in a speculative multi-threaded processor is disclosed. In one embodiment, a wrong path predictor may be used to enhance the selection of the right path at a branch point. In one embodiment, the wrong path predictor may include a speculative processor to produce a speculative processor execution outcome, and a branch corrector to determine whether to trust the speculative processor execution outcome. The branch corrector may be used to choose between using the speculative execution, or, instead, overriding the speculative execution with the non-speculative branch prediction.
    Type: Application
    Filed: May 7, 2003
    Publication date: November 11, 2004
    Inventors: Srikanth T. Srinivasan, Haitham H. Akkary
  • Patent number: 6782469
    Abstract: A critical load ordering unit is responsible for receiving instructions during a critical phase. Load instructions are associated with the number of instructions during the critical phase that depend on the load instructions. The instructions may then be ordered based on their dependence counts and/or marked as critical load instructions.
    Type: Grant
    Filed: September 29, 2000
    Date of Patent: August 24, 2004
    Assignee: Intel Corporation
    Inventors: Christopher B. Wilkerson, Srikanth T. Srinivasan, Dz-ching Ju
  • Patent number: 6779108
    Abstract: To make a branch prediction, a branch prediction apparatus determines a trigger load instruction whose value feeds into the branch instruction. A hash value is associated with the branch instruction. The branch prediction apparatus computes the hash value based on the trigger load instruction. If the hash value has not changed, the branch prediction apparatus predicts the branch to be chosen based on past predictions for the hash value.
    Type: Grant
    Filed: December 15, 2000
    Date of Patent: August 17, 2004
    Assignee: Intel Corporation
    Inventors: Dz-ching Ju, Srikanth T. Srinivasan, Christopher B. Wilkerson
  • Patent number: 6760816
    Abstract: A prefetch engine is responsible for prefetching critical data. The prefetch engine operates when a cache miss occurs accessing critical data requested by a processor. The prefetch engine requests cache lines surrounding the cache line satisfying the data request be loaded into the cache.
    Type: Grant
    Filed: September 29, 2000
    Date of Patent: July 6, 2004
    Assignee: Intel Corporation
    Inventors: Dz-ching Ju, Srikanth T. Srinivasan, Christopher B. Wilkerson
  • Patent number: 6662273
    Abstract: The critical cache tracks a critical score for each cache line in the critical cache. On cache hits, the critical score of the hit cache line is incremented by an instance score assigned to the data request. On cache misses, data may be retrieved from main memory without allocating a cache line into the critical cache, in which case the instance score is subtracted from the critical scores of all cache lines in the cache. Alternatively on a cache miss, the cache line with the smallest critical score is removed from the cache. The smallest critical score is then subtracted from each cache line in the critical cache. A new cache line is allocated that satisfies the data request, and the new cache line is given the instance score of the data request as a critical score.
    Type: Grant
    Filed: September 29, 2000
    Date of Patent: December 9, 2003
    Assignee: Intel Corporation
    Inventors: Christopher B. Wilkerson, Srikanth T. Srinivasan, Dz-ching Ju
  • Publication number: 20020078331
    Abstract: To make a branch prediction, a branch prediction apparatus determines a trigger load instruction whose value feeds into the branch instruction. A hash value is associated with the branch instruction. The branch prediction apparatus computes the hash value based on the trigger load instruction. If the hash value has not changed, the branch prediction apparatus predicts the branch to be chosen based on past predictions for the hash value.
    Type: Application
    Filed: December 15, 2000
    Publication date: June 20, 2002
    Inventors: Dz-ching Ju, Srikanth T. Srinivasan, Christopher B. Wilkerson