You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #348 is extending the DynamicMetrics tool to measure actor-specific issues.
While doing this work, I noticed the DyM does not correctly report the call targets anymore.
This broke between the 0.6.0 and 0.7.0 releases.
PR #348 rectifies some of this, but for the moment, I'll likely not get to everything, so here a list if issues that should addressed for completeness:
make sure we record everything, even for the megamorphic cases, so, we need to check
handle transitions from specific instrumentation (ValuePrim) to more generic (MessageSend) see below (specific to generic)
Actor statistics that could be added:
promise chain length
messages sent per turn
number of turns per actor
messages received, messages sent per actor
Specific To Generic
One known limitation is the recording of targets for ValuePrims when we have a mixed use of blocks and objects. For instance Array>>#putAll: becomes a generic message send, for which we still have the counter, but don't have the detailed information anymore. Perhaps, I need a way to invalidate the counter, and transition invocation counts etc to another counter for message sends.
Known Issues
recording of receiver information seems unreliable (see details below)
information gets lost when transition to megamorphic and generic case (at least for message sends)
Recording of Receiver Details
Currently we seem to have problems with this. The PingPong benchmark has many examples.
One known limitation for this are situations where we have a mixed use of blocks and objects, for instance Array>>#putAll: becomes a generic message send, for which we still have the counter, but don't have the detailed information anymore. Perhaps, I need a way to invalidate the counter, and transition invocation counts etc to another counter for message sends.
The text was updated successfully, but these errors were encountered:
PR #348 is extending the DynamicMetrics tool to measure actor-specific issues.
While doing this work, I noticed the DyM does not correctly report the call targets anymore.
This broke between the 0.6.0 and 0.7.0 releases.
PR #348 rectifies some of this, but for the moment, I'll likely not get to everything, so here a list if issues that should addressed for completeness:
Actor statistics that could be added:
Specific To Generic
One known limitation is the recording of targets for ValuePrims when we have a mixed use of blocks and objects. For instance
Array>>#putAll:
becomes a generic message send, for which we still have the counter, but don't have the detailed information anymore. Perhaps, I need a way to invalidate the counter, and transition invocation counts etc to another counter for message sends.Known Issues
Recording of Receiver Details
Currently we seem to have problems with this. The PingPong benchmark has many examples.
Losing Information
One known limitation for this are situations where we have a mixed use of blocks and objects, for instance
Array>>#putAll:
becomes a generic message send, for which we still have the counter, but don't have the detailed information anymore. Perhaps, I need a way to invalidate the counter, and transition invocation counts etc to another counter for message sends.The text was updated successfully, but these errors were encountered: