Patents by Inventor Naveen Neelakantam

Naveen Neelakantam 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: 20170235774
    Abstract: Compressing data in dependence upon characteristics of a storage system, including: receiving an amount of processing resources available in the storage system; receiving an amount of space available in the storage system; and selecting, in dependence upon the priority for conserving the amount of processing resources and the amount of space, a data compression algorithm to utilize to compress the data.
    Type: Application
    Filed: February 11, 2016
    Publication date: August 17, 2017
    Inventors: JOHN COLGROVE, JOERN ENGEL, CHRISTOPHER GOLDEN, ETHAN MILLER, NAVEEN NEELAKANTAM
  • Publication number: 20170185313
    Abstract: Intelligently compressing data in a storage array that includes a plurality of storage devices, including: prioritizing, in dependence upon an expected benefit to be gained from compressing each data element, one or more data elements; receiving an amount of processing resources available for compressing the one or more of the data elements; and selecting, in dependence upon the prioritization of the one or more data elements and the amount of processing resources available for compressing one or more of the data elements, a data compression algorithm to utilize on one or more of the data elements.
    Type: Application
    Filed: December 28, 2015
    Publication date: June 29, 2017
    Inventors: CHRISTOPHER GOLDEN, RICHARD HANKINS, ASWIN KARUMBUNATHAN, NAVEEN NEELAKANTAM, NEIL VACHHARAJANI
  • Patent number: 9612840
    Abstract: A hardware/software co-design for an optimized dynamic out-of-order Very Long Instruction Word (VLIW) pipeline.
    Type: Grant
    Filed: March 28, 2014
    Date of Patent: April 4, 2017
    Assignee: INTEL CORPORATION
    Inventors: Denis M. Khartikov, Naveen Neelakantam, John H. Kelm, Polychronis Xekalakis
  • Patent number: 9594412
    Abstract: In one embodiment, the present invention includes an apparatus having an estimation logic to estimate a dynamic capacitance of a processor circuit of a processor during a plurality of processor cycles, a power gate calculator to calculate a control value for a power gate circuit coupled to a load line and between a voltage regulator and the processor circuit based on the dynamic capacitance estimate, and a controller to control an impedance of the power gate circuit based on the control value. Other embodiments are described and claimed.
    Type: Grant
    Filed: March 30, 2012
    Date of Patent: March 14, 2017
    Assignee: Intel Corporation
    Inventors: Vjekoslav Svilan, Michael Zelikson, Kelvin Kwan, Naveen Neelakantam, Norbert Unger
  • Patent number: 9588842
    Abstract: A system and method for efficiently distributing data among multiple storage devices. A data storage array receives read and write requests from multiple client computers. The data storage array includes multiple storage devices, each with multiple allocation units (AUs). A storage controller within the data storage array determines a RAID layout for use in storing data. In response to determining a failure of a first AU, the storage controller begins reconstructing in a second AU the data stored in the first AU. For read and write requests targeting data in the first AU, the request is serviced by the first AU responsive to determining no error occurs when accessing the first AU.
    Type: Grant
    Filed: December 11, 2014
    Date of Patent: March 7, 2017
    Assignee: Pure Storage, Inc.
    Inventors: Marco Sanvido, Richard Hankins, Naveen Neelakantam, Xiaohui Wang, Mark McAuliffe, Taher Vohra
  • Patent number: 9569212
    Abstract: A processor includes an allocator with logic assigning alias hardware resources to instructions within an atomic region of instructions. The atomic region includes reordered instructions. The processor also includes a dispatcher with logic to dispatch instructions from the atomic region of instructions for execution. Furthermore, the processor includes a memory execution unit with logic to populate the memory execution unit with the instructions from the atomic region of instructions including reordered instructions, receive snoop requests and determine whether the snoop request matches memory address data of elements within the memory execution unit, and prevent reassignment of alias hardware resources for any load instructions that are eligible to match the snoop requests.
    Type: Grant
    Filed: March 28, 2014
    Date of Patent: February 14, 2017
    Assignee: Intel Corporation
    Inventors: John H. Kelm, Denis M. Khartikov, Naveen Neelakantam
  • Publication number: 20160092222
    Abstract: A processor includes a front end, a decoder, an allocator, and a retirement unit. The decoder includes logic to identify an end-of-live-range (EOLR) indicator. The EOLR indicator specifies an architectural register and a location in code for which the architectural register is unused. The allocator includes logic to scan for a mapping of the architectural register to a physical register, based upon the EOLR indicator. The allocator also includes logic to generate a request to disassociate the architectural register from the physical register. The retirement unit includes logic to disassociate the architectural register from the physical register.
    Type: Application
    Filed: September 25, 2014
    Publication date: March 31, 2016
    Inventors: David Pardo Keppel, Denis M. Khartikov, Fernando LaTorre, Marc Lupon, Grigorios Magklis, Naveen Neelakantam, Georgios Tournavitis, Polychronis Xekalakis
  • Patent number: 9256497
    Abstract: A checkpoint technique associated with an out of order based architecture of a processing device is described. An instruction may be received by its retirement unit and an identification as to whether the instruction is associated with a speculative error is performed. If the instruction is associated with the speculative error, then a first operation may be performed to replace state values of a first checkpoint of the processing device with state values of a second checkpoint. If the instruction is not associated with the speculative error, then the second checkpoint state may be updated based on the instruction.
    Type: Grant
    Filed: March 25, 2014
    Date of Patent: February 9, 2016
    Assignee: Intel Corporation
    Inventors: Denis M. Khartikov, John H. Kelm, Naveen Neelakantam
  • Publication number: 20150378731
    Abstract: Various different embodiments of the invention are described including: (1) a method and apparatus for intelligently allocating threads within a binary translation system; (2) data cache way prediction guided by binary translation code morphing software; (3) fast interpreter hardware support on the data-side; (4) out-of-order retirement; (5) decoupled load retirement in an atomic OOO processor; (6) handling transactional and atomic memory in an out-of-order binary translation based processor; and (7) speculative memory management in a binary translation based out of order processor.
    Type: Application
    Filed: June 30, 2014
    Publication date: December 31, 2015
    Inventors: PATRICK P. LAI, ETHAN SCHUCHMAN, DAVID KEPPEL, DENIS M. KHARTIKOV, POLYCHRONIS XEKALAKIS, JOSHUA B. FRYMAN, ALLAN D. KNIES, NAVEEN NEELAKANTAM, GREGOR STELLPFLUG, JOHN H. KELM, MIREM HYUSEINOVA, DEMOS PAVLOU, JAROSLAW TOPP
  • Publication number: 20150277975
    Abstract: A processor includes an allocator with logic assigning alias hardware resources to instructions within an atomic region of instructions. The atomic region includes reordered instructions. The processor also includes a dispatcher with logic to dispatch instructions from the atomic region of instructions for execution. Furthermore, the processor includes a memory execution unit with logic to populate the memory execution unit with the instructions from the atomic region of instructions including reordered instructions, receive snoop requests and determine whether the snoop request matches memory address data of elements within the memory execution unit, and prevent reassignment of alias hardware resources for any load instructions that are eligible to match the snoop requests.
    Type: Application
    Filed: March 28, 2014
    Publication date: October 1, 2015
    Inventors: John H. Kelm, Denis M. Khartikov, Naveen Neelakantam
  • Publication number: 20150277916
    Abstract: A hardware/software co-design for an optimized dynamic out-of-order Very Long Instruction Word (VLIW) pipeline.
    Type: Application
    Filed: March 28, 2014
    Publication date: October 1, 2015
    Inventors: DENIS M. KHARTIKOV, NAVEEN NEELAKANTAM, JOHN H. KELM, POLYCHRONIS XEKALAKIS
  • Publication number: 20150277911
    Abstract: A processor includes allocation unit with logic to receive a logical move instruction. The logical move instruction includes a source logical register as a source parameter and a destination logical register as a destination parameter. The source logical register is assigned to a source physical register and the destination logical register is assigned to a destination physical register. The allocation unit includes logic to assign a first value of the source logical register to the destination logical register and to maintain a second value of the destination physical register before and after the assignment of the first value to the destination logical register.
    Type: Application
    Filed: March 28, 2014
    Publication date: October 1, 2015
    Inventors: Denis M. Khartikov, Rupert Brauch, Raul Martinez, Naveen Neelakantam, Thang Vu
  • Publication number: 20150278025
    Abstract: A checkpoint technique associated with an out of order based architecture of a processing device is described. An instruction may be received by its retirement unit and an identification as to whether the instruction is associated with a speculative error is performed. If the instruction is associated with the speculative error, then a first operation may be performed to replace state values of a first checkpoint of the processing device with state values of a second checkpoint. If the instruction is not associated with the speculative error, then the second checkpoint state may be updated based on the instruction.
    Type: Application
    Filed: March 25, 2014
    Publication date: October 1, 2015
    Inventors: Dennis M. Khartikov, John H. Kelm, Naveen Neelakantam
  • Publication number: 20150277914
    Abstract: Generally, this disclosure provides systems, devices, methods and computer readable media for detection and exploitation of lock elision opportunities with binary translation based processors. The device may include a dynamic binary translation (DBT) module to translate a region of code from a first instruction set architecture (ISA) to translated code in a second ISA and to detect and elide a lock associated with a critical section of the region of code. The device may also include a processor to speculatively execute the translated code in the critical section. The device may further include a transactional support processor to detect a memory access conflict associated with the lock and/or critical section during the speculative execution, roll back the speculative execution in response to the detection, and commit the speculative execution in the absence of the detection.
    Type: Application
    Filed: March 27, 2014
    Publication date: October 1, 2015
    Inventors: John H. Kelm, Naveen Neelakantam, Denis M. Khartikov
  • Patent number: 9116729
    Abstract: A processor includes a processor core to execute a first translated instruction translated from a first instruction stored in first page of a memory. The processor also includes a translation indicator agent (XTBA) to store a first translation indicator that is read from a physical map (PhysMap) in the memory. In an embodiment, the first translation indicator is to indicate whether the first page has been modified after the first instruction is translated. Other embodiments are described as claimed.
    Type: Grant
    Filed: December 27, 2012
    Date of Patent: August 25, 2015
    Assignee: Intel Corporation
    Inventors: Nirajan L. Cooray, David Keppel, Naveen Kumar, Ori Lempel, Michael Neilly, Naveen Neelakantam, H. Peter Anvin, Sebastian Winkel
  • Patent number: 9009413
    Abstract: A processor includes a processor core including an execution unit to execute instructions, and a cache memory. The cache memory includes a controller to update each of a plurality of stale indicators in response to a lazy flush instruction. Each stale indicator is associated with respective data, and each updated stale indicator is to indicate that the respective data is stale. The cache memory also includes a plurality of cache lines. Each cache line is to store corresponding data and a foreground tag that includes a respective virtual address associated with the corresponding data, and that includes the associated stale indicator. Other embodiments are described as claimed.
    Type: Grant
    Filed: December 21, 2012
    Date of Patent: April 14, 2015
    Assignee: Intel Corporation
    Inventors: Varun K. Mohandru, Fernando Latorre, Niranjan L. Cooray, Pedro Lopez, Naveen Neelakantam, Li-Gao Zei, Rami May, Jaroslaw Topp, Thomas Gaertner
  • Publication number: 20140189659
    Abstract: A processor core includes a processor to execute a first translated instruction translated from a first instruction stored in first page of a memory. The processor also includes a translation indicator agent (XTBA) to store a first translation indicator that is read from a physical map (PhysMap) in the memory. In an embodiment, the first translation indicator is to indicate whether the first page has been modified after the first instruction is translated. Other embodiments are described as claimed.
    Type: Application
    Filed: December 27, 2012
    Publication date: July 3, 2014
    Inventors: Nirajan L. Cooray, David Keppel, Naveen Kumar, Ori Lempel, Michael Neilly, Naveen Neelakantam, H. Peter Anvin, Sebastian Winkel
  • Publication number: 20140181388
    Abstract: A processor includes a processor core including an execution unit to execute instructions, and a cache memory. The cache memory includes a controller to update each of a plurality of stale indicators in response to a lazy flush instruction. Each stale indicator is associated with respective data, and each updated stale indicator is to indicate that the respective data is stale. The cache memory also includes a plurality of cache lines. Each cache line is to store corresponding data and a foreground tag that includes a respective virtual address associated with the corresponding data, and that includes the associated stale indicator. Other embodiments are described as claimed.
    Type: Application
    Filed: December 21, 2012
    Publication date: June 26, 2014
    Inventors: Varun K. Mohandru, Fernando Latorre, NIRANJAN L. COORAY, Pedro Lopez, NAVEEN NEELAKANTAM, LI-GAO ZEI, RAMI MAY, JAROSLAW TOPP, THOMAS GAERTNER
  • Publication number: 20130275782
    Abstract: In one embodiment, the present invention includes an apparatus having an estimation logic to estimate a dynamic capacitance of a processor circuit of a processor during a plurality of processor cycles, a power gate calculator to calculate a control value for a power gate circuit coupled to a load line and between a voltage regulator and the processor circuit based on the dynamic capacitance estimate, and a controller to control an impedance of the power gate circuit based on the control value. Other embodiments are described and claimed.
    Type: Application
    Filed: March 30, 2012
    Publication date: October 17, 2013
    Inventors: Vjekoslav Svilan, Michael Zelikson, Kelvin Kwan, Naveen Neelakantam, Norbert Unger
  • Publication number: 20080244544
    Abstract: Hardware checkpoints may be used to mark software-based speculation regions. An instruction may be provided at the beginning of a speculation region and at the end of the speculation region. If an exception occurs during the speculation region, a hardware rollback may be occurred. The hardware rollback rolls back to the instruction at the beginning of the speculation region. The hardware may take a checkpoint by taking a register snapshot and treating future memory updates as tentative. When the instruction marking the end of the speculation is reached, all the tentative memory updates are committed and the previously taken register snapshot is discarded.
    Type: Application
    Filed: March 29, 2007
    Publication date: October 2, 2008
    Inventors: Naveen Neelakantam, Craig Zilles, Uma Srinivasan, Suresh Srinivas, Ravi Rajwar, Konrad Lai