Patents by Inventor Per Hammarlund

Per Hammarlund 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: 20080059753
    Abstract: Methods and apparatus to redispatch an operation for execution in a processor are described. In one embodiment, a virtual address corresponding to a store instruction may be reselected for translation into a physical address in response to remaining unselected during a previous selection process. Other embodiments are also described.
    Type: Application
    Filed: August 30, 2006
    Publication date: March 6, 2008
    Inventors: Sebastien Hily, Zhongying Zhang, Ranjani Iyer, Stephan Jourdan, Per Hammarlund
  • Patent number: 7328293
    Abstract: A method, apparatus, and system are provided for monitoring locks using monitor-memory wait. According to one embodiment, a node associated with a contended lock is monitored; and a processor seeking the contended lock is put to sleep until a monitor event occurs.
    Type: Grant
    Filed: March 9, 2007
    Date of Patent: February 5, 2008
    Assignee: Intel Corporation
    Inventors: Per Hammarlund, James B. Crossland, Anil Aggarwal, Shivnandan D. Kaushik
  • Publication number: 20080022141
    Abstract: A method, apparatus, and system are provided for monitoring locks using monitor-memory wait. In one embodiment, a memory to store instructions to perform functions of a monitoring mechanism is provided. The monitoring mechanism having a first logic to cause a processor to exit a sleep state in response to an event, wherein exiting the sleep state comprises resuming control of processing resources that were relinquished by the processor during the sleep state. The monitoring mechanism having a second logic to disable monitoring of a node associated with a contended lock after the processor exits the sleep state.
    Type: Application
    Filed: September 20, 2007
    Publication date: January 24, 2008
    Inventors: Per Hammarlund, James Crossland, Anil Aggarwal, Shivnandan Kaushik
  • Patent number: 7321963
    Abstract: An article comprising an instruction stored on a storage medium. The instruction includes opcode field storing an opcode signal and an operand field storing an operand signal. The operand is compressed prior to being stored in the operand field.
    Type: Grant
    Filed: February 5, 2004
    Date of Patent: January 22, 2008
    Assignee: Intel Corporation
    Inventors: Alan B. Kyker, Per Hammarlund, Chan Lee, Robert F. Krick, Hitesh Ahuja, William Alexander, Joseph Rohlman
  • Publication number: 20070300049
    Abstract: A technique to perform three-source instructions. At least one embodiment of the invention relates to converting a three-source instruction into at least two instructions identifying no more than two source values.
    Type: Application
    Filed: June 27, 2006
    Publication date: December 27, 2007
    Inventors: Avinash Sodani, Stephan Jourdan, Alexandre Farcy, Per Hammarlund
  • Publication number: 20070283129
    Abstract: According to one embodiment, a method is disclosed. The method includes receiving a value at a vector length (VL) tracker and establishing a VL for subsequent micro-operations (?ops) that are to be executed corresponding to the value.
    Type: Application
    Filed: December 28, 2005
    Publication date: December 6, 2007
    Inventors: Stephan Jourdan, Avinash Sodani, Michael Fetterman, Per Hammarlund, Glenn Hinton
  • Publication number: 20070239940
    Abstract: A technique for adjusting a prefetching rate. More particularly, embodiments of the invention relate to a technique to adjust prefetching as a function of the usefulness of the prefetched data.
    Type: Application
    Filed: March 31, 2006
    Publication date: October 11, 2007
    Inventors: Kshitij Doshi, Quinn Jacobson, Anne Bracy, Hong Wang, Per Hammarlund
  • Publication number: 20070214321
    Abstract: In one embodiment, the present invention includes a method for receiving a cache access request for data present in a lower-level cache line of a lower-level cache, and sending recency information regarding the lower-level cache line to a higher-level cache. The higher-level cache may be inclusive with the lower-level cache and may update age data associated with the cache line, thus reducing the likelihood of eviction of the cache line. Other embodiments are described and claimed.
    Type: Application
    Filed: March 13, 2006
    Publication date: September 13, 2007
    Inventors: Christopher Shannon, Ronak Singhal, Per Hammarlund, Hermann Gartler, Glenn Hinton
  • Publication number: 20070186055
    Abstract: A technique for using memory attributes to relay information to a program or other agent. More particularly, embodiments of the invention relate to using memory attribute bits to check various memory properties in an efficient manner.
    Type: Application
    Filed: February 7, 2006
    Publication date: August 9, 2007
    Inventors: Quinn Jacobson, Anne Bracy, Hong Wang, John Shen, Per Hammarlund, Matthew Merten, Suresh Srinivas, Kshitij Doshi, Gautham Chinya, Bratin Saha, Ali-Reza Adl-Tabatabai, Gad Sheaffer
  • Publication number: 20070162774
    Abstract: A method, apparatus, and system are provided for monitoring locks using monitor-memory wait. According to one embodiment, a node associated with a contended lock is monitored; and a processor seeking the contended lock is put to sleep until a monitor event occurs.
    Type: Application
    Filed: March 9, 2007
    Publication date: July 12, 2007
    Inventors: Per Hammarlund, James Crossland, Anil Aggarwal, Shivnandan Kaushik
  • Publication number: 20070157008
    Abstract: Microarchitecture policies and structures to predict execution clusters and facilitate inter-cluster communication are disclosed. In disclosed embodiments, sequentially ordered instructions are decoded into micro-operations. Execution of one set of micro-operations is predicted to involve execution resources to perform memory access operations and inter-cluster communication, but not to perform branching operations. Execution of a second set of micro-operations is predicted to involve execution resources to perform branching operations but not to perform memory access operations. The micro-operations are partitioned for execution in accordance with these predictions, the first set of micro-operations to a first cluster of execution resources and the second set of micro-operations to a second cluster of execution resources. The first and second sets of micro-operations are executed out of sequential order and are retired to represent their sequential instruction ordering.
    Type: Application
    Filed: December 30, 2005
    Publication date: July 5, 2007
    Inventors: Avinash Sodani, Alexandre Farcy, Stephan Jourdan, Per Hammarlund, Mark Davis
  • Publication number: 20070157188
    Abstract: The present subject matter relates to operation frame filtering, building, and execution. Some embodiments include identifying a frame signature, counting a number of execution occurrences of the frame signature, and building a frame of operations to execute instead of operations identified by the frame signature.
    Type: Application
    Filed: December 30, 2005
    Publication date: July 5, 2007
    Inventors: Stephan Jourdan, Per Hammarlund, Alexandre Farcy, John Miller
  • Publication number: 20070157211
    Abstract: In one embodiment, the present invention includes a method for directly communicating between an accelerator and an instruction sequencer coupled thereto, where the accelerator is a heterogeneous resource with respect to the instruction sequencer. An interface may be used to provide the communication between these resources. Via such a communication mechanism a user-level application may directly communicate with the accelerator without operating system support. Further, the instruction sequencer and the accelerator may perform operations in parallel. Other embodiments are described and claimed.
    Type: Application
    Filed: December 29, 2005
    Publication date: July 5, 2007
    Inventors: Hong Wang, John Shen, Hong Jiang, Richard Hankins, Per Hammarlund, Dion Rodgers, Gautham Chinya, Baiju Patel, Shiv Kaushik, Bryant Bigbee, Gad Sheaffer, Yoav Talgam, Yuval Yosef, James Held
  • Publication number: 20070156990
    Abstract: A method is disclosed. The method includes scheduling a load operation at least twice the size of a maximum access supported by a memory device, dividing the load operation into a plurality of separate load operation segments having a size equivalent to the maximum access supported by the memory device, and performing each of the plurality of load operation segments. A further method is disclosed where a temporary register is used to minimize the number of memory accesses to support unaligned accesses.
    Type: Application
    Filed: December 30, 2005
    Publication date: July 5, 2007
    Inventors: Per Hammarlund, Stephan Jourdan, Michael Fetterman, Glenn Hinton, Sebastien Hily, Ronak Singhal
  • Publication number: 20070157006
    Abstract: Microarchitecture policies and structures partition execution resource clusters. In disclosed microarchitecture embodiments, micro-operations representing a sequential instruction ordering are partitioned into a two sets. To one set of micro-operations execution resources are allocated from a cluster of execution resources that can perform memory access operations but not branching operations. To the other set of micro-operations execution resources are allocated from a cluster of execution resources that can perform branching operations but not memory access operations. The first and second sets of micro-operations may be executed out of sequential order but are retired to represent their sequential instruction ordering.
    Type: Application
    Filed: December 30, 2005
    Publication date: July 5, 2007
    Inventors: Stephan Jourdan, Avinash Sodani, Alexandre Farcy, Per Hammarlund, Sebastien Hily, Mark Davis
  • Publication number: 20070143575
    Abstract: In one embodiment, a method for flow optimization and prediction for vector streaming single instruction, multiple data (SIMD) extension (VSSE) memory operations is disclosed. The method comprises generating an optimized micro-operation (?op) flow for an instruction to operate on a vector if the instruction is predicted to be unmasked and unit-stride, the instruction to access elements in memory, and accessing via the optimized ?op flow two or more of the elements at the same time without determining masks of the two or more elements. Other embodiments are also described.
    Type: Application
    Filed: December 21, 2005
    Publication date: June 21, 2007
    Inventors: Stephen Jourdan, Per Hammarlund, Michael Fetterman, Michael Cornaby, Glenn Hinton, Avinash Sodani
  • Publication number: 20070101076
    Abstract: In one embodiment, the present invention includes a method for requesting an allocation of memory to be a backing store for architectural state information of a processor and storing the architectural state information in the backing store using an application. In this manner, the backing store and processor enhancements using information in the backing store may be transparent to an operating system. Other embodiments are described and claimed.
    Type: Application
    Filed: October 31, 2005
    Publication date: May 3, 2007
    Inventors: Martin Dixon, Michael Cornaby, Michael Fetterman, Per Hammarlund
  • Patent number: 7213093
    Abstract: A method, apparatus, and system are provided for monitoring locks using monitor-memory wait. According to one embodiment, a node associated with a contended lock is monitored; and a processor seeking the contended lock is put to sleep until a monitor event occurs.
    Type: Grant
    Filed: June 27, 2003
    Date of Patent: May 1, 2007
    Assignee: Intel Corporation
    Inventors: Per Hammarlund, James B. Crossland, Anil Aggarwal, Shivnandan D. Kaushik
  • Publication number: 20070088916
    Abstract: A technique for thread synchronization and communication.
    Type: Application
    Filed: October 19, 2005
    Publication date: April 19, 2007
    Inventors: Quinn Jacobson, Hong Wang, John Shen, Per Hammarlund
  • Publication number: 20070079179
    Abstract: In one embodiment, the present invention includes a method for executing an operation on low order portions of first and second source operands using a first execution stack of a processor and executing the operation on high order portions of the first and second source operands using a second execution stack of the processor, where the operation in the second execution stack is staggered by one or more cycles from the operation in the first execution stack. Other embodiments are described and claimed.
    Type: Application
    Filed: September 30, 2005
    Publication date: April 5, 2007
    Inventors: Stephan Jourdan, Avinash Sodani, Michael Fetterman, Per Hammarlund, Ronak Singhal, Glenn Hinton