Closed chrisseaton closed 4 years ago
This seems like it's probably true, do you have a test case to reliably demonstrate it?
No I don't. I found it through writing about Truffle's each_object
and how it uses deoptimisation and suddenly I thought it may not work in Topaz using just the GC.
But I don't think the problem is entirely theoretical. When we think about allocation removal we often think of small temporary trivial objects nobody would be interested in finding using each_object
, but it's also entirely possible that major long-lived application objects never escape.
Sure. All that should really be required for this to work is to force all the virtualizables, so it's straightforward.
On Sat, Jun 27, 2015 at 11:41 AM, Chris Seaton notifications@github.com wrote:
No I don't. I found it through writing about Truffle's each_object and how it uses deoptimisation and suddenly I thought it may not work in Topaz using just the GC.
But I don't think the problem is entirely theoretical. When we think about allocation removal we often think of small temporary trivial objects nobody would be interested in finding using each_object, but it's also entirely possible that major long-lived application objects never escape.
— Reply to this email directly or view it on GitHub https://github.com/topazproject/topaz/issues/843#issuecomment-116089812.
"I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire) "The people's good is the highest law." -- Cicero GPG Key fingerprint: 125F 5C67 DFE9 4084
Closing due to inactivity.
It produces the set of objects that are being managed by the GC, not the set of live objects, which includes those that have been optimised away. Maybe deoptimise globally before looking for objects?