Monitoring writes using thread-local write barrier buffers and soft synchronization
AssigneeClausal Computing Oy
InventorsTatu J. Ylonen, Tero T. Mononen
Life of this patent
Estimating the term…
Abstract
During garbage collection, writes to objects being copied (relocated) are monitored (tracked) using a write barrier that uses a thread-local write barrier buffer. In the preferred embodiment, soft synchronization is used for reading the thread-local write barrier buffers. In response to detecting a write to an object, the object may be re-copied, the copying may be made to fail, the write may be propagated to another copy of the object, or, e.g., another node in a distributed system may be notified of the write.
Claims17
A method of monitoring writes to a set of objects by one or more mutators, comprising:
- recording, by a write barrier executed by a mutator, information about at least one write by the mutator in a thread-local write barrier buffer associated with the mutator;
- obtaining the recorded information about writes from the thread-local write barrier buffers associated with one or more mutators;
- processing the recorded information about writes;
- and
- in response to the recorded information about one of the writes indicating that at least a part of an object being copied has been written into, causing at least the written part of the object to be re-copied to another copy of the object.
A computing system comprising:
- at least one mutator associated with a write barrier buffer;
- at least one write barrier connected to the mutator and comprising a write recorder configured to record information about at least one write by the mutator in the write barrier buffer;
- a write obtainer connected to at least one GC point handler connected to the mutator;
- and
- at least one write processor connected to the write obtainer, configured to process the recorded information about the at least one write and in response to the information indicating that at least a part of an object being copied has been written into, causing at least the written part of the object to be re-copied to another copy of the object.
A tangible computer-readable medium comprising computer readable program code means embodied therein, operable to cause a computer to:
- record, using a write barrier executed by a mutator, information about at least one write by the mutator in a thread-local write barrier buffer associated with the mutator;
- obtain the recorded information about writes from the thread-local write barrier buffers associated with mutators;
- process the recorded information about writes;
- and
- in response to the recorded information about one of the writes indicating that at least a part of an object being copied has been written into, cause at least the written part of the object to be re-copied to another copy of the object.
A method of monitoring writes to a set of objects by one or more mutators, comprising:
- recording, by a write barrier executed by a mutator, information about at least one write by the mutator in a thread-local write barrier buffer associated with the mutator;
- obtaining the recorded information about writes from the thread-local write barrier buffers associated with one or more mutators;
- processing the recorded information about writes;
- and
- in response to the recorded information about one of the writes indicating that at least a part of an object being copied has been written into, causing at least the written part of the object to be propagated to another node than the one processing the write in a distributed system.
A computing system comprising:
- at least one mutator associated with a write barrier buffer;
- at least one write barrier connected to the mutator and comprising a write recorder configured to record information about at least one write by the mutator in the write barrier buffer;
- a write obtainer connected to at least one GC point handler connected to the mutator;
- and
- at least one write processor connected to the write obtainer, configured to process the recorded information about the at least one write and in response to the information indicating that at least a part of an object being copied has been written into, causing at least the written part of the object to be propagated to another node than the one processing the write in a distributed system.
A tangible computer-readable medium comprising computer readable program code means embodied therein, operable to cause a computer to:
- record, using a write barrier executed by a mutator, information about at least one write by the mutator in a thread-local write barrier buffer associated with the mutator;
- obtain the recorded information about writes from the thread-local write barrier buffers associated with mutators;
- process the recorded information about writes;
- and
- in response to the recorded information about one of the writes indicating that at least a part of an object being copied has been written into, cause at least the written part of the object to be propagated to another node than the one processing the write in a distributed system.
Dependencies are inferred from the claim text.