Patents by Inventor Zoran Radovic

Zoran Radovic 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: 20120246437
    Abstract: The disclosed embodiments provide a system that uses unused bits in a memory pointer. During operation, the system determines a set of address bits in a address space that will not be needed for addressing purposes during program operation. Subsequently, the system stores data associated with the memory pointer in this set of address bits. The system masks this set of address bits when using the memory pointer to access the memory address associated with the memory pointer. Storing additional data in unused pointer bits can reduce the number of memory accesses for a program and improve program performance and/or reliability.
    Type: Application
    Filed: March 22, 2011
    Publication date: September 27, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Zoran Radovic, Graham Ricketson Murphy, Paul J. Jordan, John G. Johnson
  • Publication number: 20110202725
    Abstract: A method and processor supporting architected instructions for tracking and determining set membership, such as by implementing Bloom filters. The apparatus includes storage arrays (e.g., registers) and an execution core configured to store an indication that a given value is a member of a set, including by executing an architected instruction having an operand specifying the given value, wherein executing comprises hashing applying a hash function to the value to determine an index into one of the storage arrays and setting a bit of the storage array corresponding to the index. An architected query instruction is later executed to determine if a query value is not a member of the set, including by applying the hash function to the query value to determine an index into the storage array and determining whether a bit at the index of the storage array is set.
    Type: Application
    Filed: February 18, 2010
    Publication date: August 18, 2011
    Inventors: John R. Rose, Lawrence A. Spracklen, Zoran Radovic
  • Publication number: 20100122036
    Abstract: Methods and apparatuses are disclosed for improving speculation success in processors. In some embodiments, the method may include executing a plurality of threads of program code, the plurality of threads comprising a first speculative load request, setting an indicator bit corresponding to a cache line in response to the first speculative load request, and in the event that a second speculative load request from the plurality of threads refers to a first cache line with the indicator bit set, determining if a second cache line is available.
    Type: Application
    Filed: November 7, 2008
    Publication date: May 13, 2010
    Applicant: Sun Microsystems, Inc.
    Inventors: Zoran Radovic, Erik Martin Roland Karlsson
  • Patent number: 7529844
    Abstract: A method for controlling a software lock acquirable by processors in a plurality of nodes of a multiprocessing system is disclosed. The method comprises a first processor of a first node of the plurality of nodes acquiring the lock, and the first processor selectively releasing the lock in a first state that allows other processors within the first node to acquire the lock but that prevents processors in a remote node of the plurality of nodes from obtaining the lock. In another embodiment, a method comprises a first processor of a first node attempting to acquire the lock, the first processor determining whether another processor within the same node is remotely spinning on the lock, and the first processor remotely spinning on the lock in response to determining that another processor in the same node is not remotely spinning on the software lock.
    Type: Grant
    Filed: April 24, 2003
    Date of Patent: May 5, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Zoran Radovic, Erik E. Hagersten
  • Patent number: 7412567
    Abstract: In one embodiment, a processor comprises a coherence trap unit and a trap logic coupled to the coherence trap unit. The coherence trap unit is also coupled to receive data accessed in response to the processor executing a memory operation. The coherence trap unit is configured to detect that the data matches a designated value indicating that a coherence trap is to be initiated to coherently perform the memory operation. The trap logic is configured to trap to a designated software routine responsive to the coherence trap unit detecting the designated value. In some embodiments, a cache tag in a cache may track whether or not the corresponding cache line has the designated value, and the cache tag may be used to trigger a trap in response to an access to the corresponding cache line.
    Type: Grant
    Filed: April 28, 2006
    Date of Patent: August 12, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: HÃ¥kan E. Zeffer, Erik E. Hagersten, Anders Landin, Shailender Chaudhry, Paul N. Loewenstein, Robert E. Cypher, Zoran Radovic
  • Publication number: 20070255907
    Abstract: In one embodiment, a processor comprises a coherence trap unit and a trap logic coupled to the coherence trap unit. The coherence trap unit is also coupled to receive data accessed in response to the processor executing a memory operation. The coherence trap unit is configured to detect that the data matches a designated value indicating that a coherence trap is to be initiated to coherently perform the memory operation. The trap logic is configured to trap to a designated software routine responsive to the coherence trap unit detecting the designated value. In some embodiments, a cache tag in a cache may track whether or not the corresponding cache line has the designated value, and the cache tag may be used to trigger a trap in response to an access to the corresponding cache line.
    Type: Application
    Filed: April 28, 2006
    Publication date: November 1, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Hakan Zeffer, Erik Hagersten, Anders Landin, Shailender Chaudhry, Paul Loewenstein, Robert Cypher, Zoran Radovic
  • Patent number: 7080213
    Abstract: A system and method for reducing shared memory write overhead in multiprocessor system. In one embodiment, a multiprocessing system implements a method comprising storing an indication of obtained store permission corresponding to a particular address in a store buffer. The indication may be, for example, the address of a cache line for which a write permission has been obtained. Obtaining the write permission may include locking and modifying an MTAG or other coherence state entry. The method further comprises determining whether the indication of obtained store permission corresponds to an address of a write operation to be performed. In response to the indication corresponding to the address of the write operation to be performed, the write operation is performed without invoking corresponding global coherence operations.
    Type: Grant
    Filed: December 16, 2002
    Date of Patent: July 18, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Oskar Grenholm, Zoran Radovic, Erik E. Hagersten
  • Patent number: 6985984
    Abstract: A multiprocessing system including multiple processing nodes employs various implementations of hierarchical back-off locks. A thread attempting to obtain a software lock may determine whether the lock is currently owned by a different node than the node in which the thread is executing. If the lock is not owned by a different node, the thread executes code to perform a fast spin operation. On the other hand, if the lock is owned by a different node, the thread executes code to perform a slow spin operation. In this manner, node locality may result wherein a thread that is executing within the same node in which a lock has already been obtained will be more likely to subsequently acquire the lock when it is freed in relation to other contending threads executing in other nodes.
    Type: Grant
    Filed: November 7, 2002
    Date of Patent: January 10, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Zoran Radovic, Erik Hagersten
  • Publication number: 20040117564
    Abstract: A system and method for reducing shared memory write overhead in multiprocessor system. In one embodiment, a multiprocessing system implements a method comprising storing an indication of obtained store permission corresponding to a particular address in a store buffer. The indication may be, for example, the address of a cache line for which a write permission has been obtained. Obtaining the write permission may include locking and modifying an MTAG or other coherence state entry. The method further comprises determining whether the indication of obtained store permission corresponds to an address of a write operation to be performed. In response to the indication corresponding to the address of the write operation to be performed, the write operation is performed without invoking corresponding global coherence operations.
    Type: Application
    Filed: December 16, 2002
    Publication date: June 17, 2004
    Inventors: Oskar Grenholm, Zoran Radovic, Erik E. Hagersten
  • Publication number: 20040098723
    Abstract: A multiprocessing system including multiple processing nodes employs various implementations of hierarchical back-off locks. A thread attempting to obtain a software lock may determine whether the lock is currently owned by a different node than the node in which the thread is executing. If the lock is not owned by a different node, the thread executes code to perform a fast spin operation. On the other hand, if the lock is owned by a different node, the thread executes code to perform a slow spin operation. In this manner, node locality may result wherein a thread that is executing within the same node in which a lock has already been obtained will be more likely to subsequently acquire the lock when it is freed in relation to other contending threads executing in other nodes.
    Type: Application
    Filed: November 7, 2002
    Publication date: May 20, 2004
    Inventors: Zoran Radovic, Erik Hagersten
  • Publication number: 20030236817
    Abstract: A method for controlling a software lock acquirable by processors in a plurality of nodes of a multiprocessing system is disclosed. The method comprises a first processor of a first node of the plurality of nodes acquiring the lock, and the first processor selectively releasing the lock in a first state that allows other processors within the first node to acquire the lock but that prevents processors in a remote node of the plurality of nodes from obtaining the lock. In another embodiment, a method comprises a first processor of a first node attempting to acquire the lock, the first processor determining whether another processor within the same node is remotely spinning on the lock, and the first processor remotely spinning on the lock in response to determining that another processor in the same node is not remotely spinning on the software lock.
    Type: Application
    Filed: April 24, 2003
    Publication date: December 25, 2003
    Inventors: Zoran Radovic, Erik E. Hagersten