Patents by Inventor Antonios Printezis

Antonios Printezis 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).

  • Patent number: 11775429
    Abstract: Methods and systems for garbage collection are described. In some embodiments, Garbage collector threads may maximize local accesses and minimize remote access by copying Young objects and Old objects differently. When copying a Young object, a garbage collector thread may determine the lgroup of the pool that contains the object and copy the object to a pool of the same lgroup. The garbage collector thread may spread Old objects among lgroups by copying Old objects to pools of the same lgroup as the respective garbage collector thread. Additional methods and systems are disclosed.
    Type: Grant
    Filed: July 14, 2021
    Date of Patent: October 3, 2023
    Assignee: Oracle International Corporation
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
  • Publication number: 20210397551
    Abstract: Methods and systems for garbage collection are described. In some embodiments, Garbage collector threads may maximize local accesses and minimize remote access by copying Young objects and Old objects differently. When copying a Young object, a garbage collector thread may determine the lgroup of the pool that contains the object and copy the object to a pool of the same lgroup. The garbage collector thread may spread Old objects among lgroups by copying Old objects to pools of the same lgroup as the respective garbage collector thread. Additional methods and systems are disclosed.
    Type: Application
    Filed: July 14, 2021
    Publication date: December 23, 2021
    Applicant: Oracle International Corporation
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
  • Patent number: 11099982
    Abstract: Methods and systems for garbage collection are described. In some embodiments, Garbage collector threads may maximize local accesses and minimize remote access by copying Young objects and Old objects differently. When copying a Young object, a garbage collector thread may determine the lgroup of the pool that contains the object and copy the object to a pool of the same lgroup. The garbage collector thread may spread Old objects among lgroups by copying Old objects to pools of the same lgroup as the respective garbage collector thread. Additional methods and systems are disclosed.
    Type: Grant
    Filed: March 31, 2011
    Date of Patent: August 24, 2021
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
  • Patent number: 10963376
    Abstract: System and Methods for non-uniform memory (NUMA) garbage collection are provided. Multiple memories and processors are categorized into local groups. A heap space is divided into multiple pools and stored in each of the memories. Garbage collection threads are assigned to each of the local groups. Garbage collection is performed using the garbage collection threads for objects contained in the pools using the garbage collector threads, memory, and processor assigned to each local group, minimizing remote memory accesses.
    Type: Grant
    Filed: October 1, 2018
    Date of Patent: March 30, 2021
    Assignee: Oracle International Corporation
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
  • Publication number: 20190034332
    Abstract: System and Methods for non-uniform memory (NUMA) garbage collection are provided. Multiple memories and processors are categorized into local groups. A heap space is divided into multiple pools and stored in each of the memories. Garbage collection threads are assigned to each of the local groups. Garbage collection is performed using the garbage collection threads for objects contained in the pools using the garbage collector threads, memory, and processor assigned to each local group, minimizing remote memory accesses.
    Type: Application
    Filed: October 1, 2018
    Publication date: January 31, 2019
    Applicant: Oracle International Corporation
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
  • Patent number: 10140208
    Abstract: System and Methods for non-uniform memory (NUMA) garbage collection are provided. Multiple memories and processors are categorized into local groups. A heap space is divided into multiple pools and stored in each of the memories. Garbage collection threads are assigned to each of the local groups. Garbage collection is performed using the garbage collection threads for objects contained in the pools using the garbage collector threads, memory, and processor assigned to each local group, minimizing remote memory accesses.
    Type: Grant
    Filed: March 31, 2011
    Date of Patent: November 27, 2018
    Assignee: Oracle International Corporation
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
  • Patent number: 9208081
    Abstract: A processing thread obtains an initial status of a reference field associated with an object having data stored in memory. The reference field represents, at least in part, a status of current modification operations (e.g., a status of moving the object from one location in memory to another), if any, applied to the object. The processing thread applies a sequence of instructions to data retrieved from the object to produce computational results for storage in the object. Prior to storing the computational results in the object, the processing thread can confirm whether the reference field has changed since obtaining the initial status.
    Type: Grant
    Filed: November 30, 2007
    Date of Patent: December 8, 2015
    Assignee: Oracle America, Inc.
    Inventors: David Dice, Nir N. Shavit, Mark S. Moir, Antonios Printezis
  • Patent number: 8972629
    Abstract: A method for queuing thread update buffers to enhance garbage collection. The method includes providing a global update buffer queue and a global array with slots for storing pointers to filled update buffers. The method includes with an application thread writing to the update buffer and, when filled, attempting to write the pointer for the update buffer to the global array. The array slot may be selected randomly or by use of a hash function. When the writing fails due to a non-null slot, the method includes operating the application thread to add the filled update buffer to the global update buffer queue. The method includes, with a garbage collector thread, inspecting the global array for non-null entries and, upon locating a pointer, claiming the filled update buffer. The method includes using the garbage collector thread to claim and process buffers added to the global update buffer queue.
    Type: Grant
    Filed: May 29, 2014
    Date of Patent: March 3, 2015
    Assignee: Oracle America, Inc.
    Inventors: Antonios Printezis, Paul H. Hohensee
  • Patent number: 8914424
    Abstract: Improvements to apparatus, methods, and computer program products are disclosed to improve the efficiency of pinning objects in a heap memory that is subject to a garbage collection system.
    Type: Grant
    Filed: August 13, 2008
    Date of Patent: December 16, 2014
    Assignee: Oracle America, Inc.
    Inventor: Antonios Printezis
  • Publication number: 20140281060
    Abstract: A method for queuing thread update buffers to enhance garbage collection. The method includes providing a global update buffer queue and a global array with slots for storing pointers to filled update buffers. The method includes with an application thread writing to the update buffer and, when filled, attempting to write the pointer for the update buffer to the global array. The array slot may be selected randomly or by use of a hash function. When the writing fails due to a non-null slot, the method includes operating the application thread to add the filled update buffer to the global update buffer queue. The method includes, with a garbage collector thread, inspecting the global array for non-null entries and, upon locating a pointer, claiming the filled update buffer. The method includes using the garbage collector thread to claim and process buffers added to the global update buffer queue.
    Type: Application
    Filed: May 29, 2014
    Publication date: September 18, 2014
    Applicant: Oracle America
    Inventors: ANTONIOS PRINTEZIS, PAUL H. HOHENSEE
  • Patent number: 8825721
    Abstract: System and Methods for time based object aging for generational garbage collectors are provided. Time data is received from a user identifying the amount of time an object should survive in a generation defined in a heap. Generational garbage collection is performed, and objects are promoted from one generation to the next oldest generation based on the time data received.
    Type: Grant
    Filed: October 3, 2011
    Date of Patent: September 2, 2014
    Assignee: Oracle International Corporation
    Inventors: Charlie Hunt, Antonios Printezis, Staffan Friberg
  • Patent number: 8782306
    Abstract: A method for queuing thread update buffers to enhance garbage collection. The method includes providing a global update buffer queue and a global array with slots for storing pointers to filled update buffers. The method includes with an application thread writing to the update buffer and, when filled, attempting to write the pointer for the update buffer to the global array. The array slot may be selected randomly or by use of a hash function. When the writing fails due to a non-null slot, the method includes operating the application thread to add the filled update buffer to the global update buffer queue. The method includes, with a garbage collector thread, inspecting the global array for non-null entries and, upon locating a pointer, claiming the filled update buffer. The method includes using the garbage collector thread to claim and process buffers added to the global update buffer queue.
    Type: Grant
    Filed: February 3, 2010
    Date of Patent: July 15, 2014
    Assignee: Oracle America
    Inventors: Antonios Printezis, Paul H. Hohensee
  • Patent number: 8725974
    Abstract: A method, apparatus and computer program product for providing page-protection based memory access barrier traps is presented. A value for a user-mode bit (u-bit) is computed for each extant virtual page in an address space, the u-bit indicative that an object on the virtual page is being moved by a Garbage Collector process. An instruction is executed which causes an access protection fault. The state of the u-bit for the virtual page associated with the access protection fault is consulted when the access protection fault is encountered. Additionally, the access protection fault is translated into a user-trap (utrap) and the utrap is serviced when the u-bit is set.
    Type: Grant
    Filed: January 17, 2007
    Date of Patent: May 13, 2014
    Assignee: Oracle America, Inc.
    Inventors: David Dice, Antonios Printezis
  • Patent number: 8645651
    Abstract: A method for queuing update buffers to enhance garbage collection. The method includes running an application thread and providing, for the application thread, a data structure including current and finished update buffer slots. The method includes providing an update buffer for the application thread and storing a pointer to the update buffer in the current update buffer slot. The method includes storing null in the finished update buffer slot and, with the application thread, writing to the update buffer. The thread may write a pointer to the filled update buffer in the finished update buffer slot after the buffer is filled. The method includes using a garbage collector thread to inspect the finished update buffer slot and claim filled buffers and change the pointer to null. The thread then obtains an empty update buffer and updates the current update buffer slot to point to the new buffer.
    Type: Grant
    Filed: January 26, 2010
    Date of Patent: February 4, 2014
    Assignee: Oracle International Corporation
    Inventors: Antonios Printezis, Paul H. Hohensee
  • Patent number: 8589456
    Abstract: The present disclosure describes garbage collection that provides prompt reclamation of large objects. A heap space is divided into Young regions, Old regions, and Humongous regions. A remembered set is created and maintained, during the execution of one or more programs, for each region that specifies where there are references from outside the region to inside the region. A garbage collection list is generated specifying regions to perform garbage collection on. All Young regions and at least one Humongous region are included in the garbage collection list. If it is determined to include Old regions, the Old regions are selected and included in the garbage collection list. Then, a garbage collection is performed on the regions specified in the garbage collection list. During the garbage collection, the indication for each region is utilized to determine reachable objects in the region, ensuring that reachable objects are not deallocated.
    Type: Grant
    Filed: February 19, 2010
    Date of Patent: November 19, 2013
    Assignee: Oracle America, Inc.
    Inventors: Antonios Printezis, Y. Srinivas Ramakrishna
  • Patent number: 8566812
    Abstract: One embodiment of the present invention provides a system that uses observed object patterns to dynamically tune a virtual machine for responsiveness and/or throughput. The system first analyzes a memory region containing a set of objects to identify objects in the memory region that indicate the need for responsiveness and/or throughput. The system gathers statistics based on the identified and unidentified objects in the set of objects, and then uses these statistics to dynamically tune a virtual machine.
    Type: Grant
    Filed: August 31, 2006
    Date of Patent: October 22, 2013
    Assignee: Oracle America, Inc.
    Inventors: Antonios Printezis, Yin Zin Mark Lam
  • Patent number: 8516019
    Abstract: System and Methods for time-based object aging for generational garbage collectors are provided. Time data is received from a user identifying the amount of time an object should survive in a generation defined in a heap. A circular buffer is generated to store a plurality of starting time for a plurality of garbage collections. Generational garbage collection is performed, and the time data in conjunction with the starting times stored in the circular buffer are used to determine when objects are promoted from one generation to the next oldest generation.
    Type: Grant
    Filed: October 3, 2011
    Date of Patent: August 20, 2013
    Assignee: Oracle America, Inc.
    Inventors: Charlie J. Hunt, Antonios Printezis, Staffan Friberg
  • Publication number: 20130086132
    Abstract: System and Methods for time based object aging for generational garbage collectors are provided. Time data is received from a user identifying the amount of time an object should survive in a generation defined in a heap. Generational garbage collection is performed, and objects are promoted from one generation to the next oldest generation based on the time data received.
    Type: Application
    Filed: October 3, 2011
    Publication date: April 4, 2013
    Applicant: Oracle International Corporation
    Inventors: Charlie Hunt, Antonios Printezis, Staffan Friberg
  • Publication number: 20130086131
    Abstract: System and Methods for time-based object aging for generational garbage collectors are provided. Time data is received from a user identifying the amount of time an object should survive in a generation defined in a heap. A circular buffer is generated to store a plurality of starting time for a plurality of garbage collections. Generational garbage collection is performed, and the time data in conjunction with the starting times stored in the circular buffer are used to determine when objects are promoted from one generation to the next oldest generation.
    Type: Application
    Filed: October 3, 2011
    Publication date: April 4, 2013
    Applicant: Oracle International Corporation
    Inventors: Charlie Hunt, Antonios Printezis, Staffan Friberg
  • Publication number: 20120254266
    Abstract: Methods and systems for garbage collection are described. In some embodiments, Garbage collector threads may maximize local accesses and minimize remote access by copying Young objects and Old objects differently. When copying a Young object, a garbage collector thread may determine the lgroup of the pool that contains the object and copy the object to a pool of the same lgroup. The garbage collector thread may spread Old objects among lgroups by copying Old objects to pools of the same lgroup as the respective garbage collector thread. Additional methods and systems are disclosed.
    Type: Application
    Filed: March 31, 2011
    Publication date: October 4, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes