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: 11775429Abstract: 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: GrantFiled: July 14, 2021Date of Patent: October 3, 2023Assignee: Oracle International CorporationInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
-
Publication number: 20210397551Abstract: 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: ApplicationFiled: July 14, 2021Publication date: December 23, 2021Applicant: Oracle International CorporationInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
-
Patent number: 11099982Abstract: 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: GrantFiled: March 31, 2011Date of Patent: August 24, 2021Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
-
Patent number: 10963376Abstract: 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: GrantFiled: October 1, 2018Date of Patent: March 30, 2021Assignee: Oracle International CorporationInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
-
Publication number: 20190034332Abstract: 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: ApplicationFiled: October 1, 2018Publication date: January 31, 2019Applicant: Oracle International CorporationInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
-
Patent number: 10140208Abstract: 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: GrantFiled: March 31, 2011Date of Patent: November 27, 2018Assignee: Oracle International CorporationInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes
-
Patent number: 9208081Abstract: 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: GrantFiled: November 30, 2007Date of Patent: December 8, 2015Assignee: Oracle America, Inc.Inventors: David Dice, Nir N. Shavit, Mark S. Moir, Antonios Printezis
-
Patent number: 8972629Abstract: 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: GrantFiled: May 29, 2014Date of Patent: March 3, 2015Assignee: Oracle America, Inc.Inventors: Antonios Printezis, Paul H. Hohensee
-
Patent number: 8914424Abstract: 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: GrantFiled: August 13, 2008Date of Patent: December 16, 2014Assignee: Oracle America, Inc.Inventor: Antonios Printezis
-
Publication number: 20140281060Abstract: 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: ApplicationFiled: May 29, 2014Publication date: September 18, 2014Applicant: Oracle AmericaInventors: ANTONIOS PRINTEZIS, PAUL H. HOHENSEE
-
Patent number: 8825721Abstract: 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: GrantFiled: October 3, 2011Date of Patent: September 2, 2014Assignee: Oracle International CorporationInventors: Charlie Hunt, Antonios Printezis, Staffan Friberg
-
Patent number: 8782306Abstract: 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: GrantFiled: February 3, 2010Date of Patent: July 15, 2014Assignee: Oracle AmericaInventors: Antonios Printezis, Paul H. Hohensee
-
Patent number: 8725974Abstract: 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: GrantFiled: January 17, 2007Date of Patent: May 13, 2014Assignee: Oracle America, Inc.Inventors: David Dice, Antonios Printezis
-
Patent number: 8645651Abstract: 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: GrantFiled: January 26, 2010Date of Patent: February 4, 2014Assignee: Oracle International CorporationInventors: Antonios Printezis, Paul H. Hohensee
-
Patent number: 8589456Abstract: 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: GrantFiled: February 19, 2010Date of Patent: November 19, 2013Assignee: Oracle America, Inc.Inventors: Antonios Printezis, Y. Srinivas Ramakrishna
-
Patent number: 8566812Abstract: 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: GrantFiled: August 31, 2006Date of Patent: October 22, 2013Assignee: Oracle America, Inc.Inventors: Antonios Printezis, Yin Zin Mark Lam
-
Patent number: 8516019Abstract: 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: GrantFiled: October 3, 2011Date of Patent: August 20, 2013Assignee: Oracle America, Inc.Inventors: Charlie J. Hunt, Antonios Printezis, Staffan Friberg
-
Publication number: 20130086132Abstract: 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: ApplicationFiled: October 3, 2011Publication date: April 4, 2013Applicant: Oracle International CorporationInventors: Charlie Hunt, Antonios Printezis, Staffan Friberg
-
Publication number: 20130086131Abstract: 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: ApplicationFiled: October 3, 2011Publication date: April 4, 2013Applicant: Oracle International CorporationInventors: Charlie Hunt, Antonios Printezis, Staffan Friberg
-
Publication number: 20120254266Abstract: 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: ApplicationFiled: March 31, 2011Publication date: October 4, 2012Applicant: ORACLE INTERNATIONAL CORPORATIONInventors: Antonios Printezis, Igor Veresov, Paul Henry Hohensee, John Coomes