[Glass] A couple of questions about "new" features of ProfMonitor
Mariano Martinez Peck via Glass
glass at lists.gemtalksystems.com
Mon May 29 06:21:30 PDT 2017
On Mon, May 29, 2017 at 10:11 AM, Mariano Martinez Peck <
marianopeck at gmail.com> wrote:
> Hi guys,
>
> I am trying to improve my profiling code to use some features which I have
> pointed out to be new (at least some of them). But I have some questions
> about it.
>
> 1) ProfMonitor >> setOptions: is confusing to me. Mostly, it's code
> comment vs what I see in the results. The comment says:
>
> *"anArray is an Array of Strings or Symbols containing*
> * at most one of #objFaults #pageFaults #edenUsage #gcTime
> #objCreation*
> * and optionally #cpu or #real .*
> * The last #cpu or #real if any specifies real or cpu time sampling.*
> * #gcTime implies default #cpu and is in units of milliseconds .*
> * #objFaults and #pageFaults are in units of faults and imply default
> #real .*
> * #edenUsage is in units of bytes and implies default #real .*
> * #objCreation implies default #cpu .*
> * "*
>
> Note that the word "implies" is used many times there. It says gcTime
> implies #real and that #objFaults and #pageFaults implies #real. Then it
> says #gcTime implies #cpu.
>
> The result of my profile shows:
>
> STATISTICAL SAMPLING RESULTS
> elapsed CPU time: 438 ms
> monitoring interval: 100.0 us
> 0 pageFaults 817 objFaults 0 gcMs 2518808 edenBytesUsed
>
> So.... I am getting both from #real (page faults, object faults, eden
> usage, etc) and from #cpu (gc time). I am confused here. Any clarification
> ?
>
> 2) Is there a way to get the results/stats/printString of only the
> "STATISTICAL SAMPLING RESULTS" part pasted above? I mean, I tried
> accessing #results etc but I find no easy way to get access to those
> results (a result of each of the specified option via #setOptions:) or to
> that printString (rather than the whole #reportDownTo: with all the tree
> etc).
>
>
Sorry, and I have a 3) question.... and it's why #objCreation does not seem
to work?
| realTimeProf realTimeProfResults |
realTimeProf := ProfMonitor new.
realTimeProf monitorBlock: [ 10 timesRepeat: [Transcript show: 'buuh'] ].
realTimeProf setOptions: #( #objCreation #cpu ).
realTimeProfResults := realTimeProf reportDownTo: 0.03.
realTimeProf removeResults.
realTimeProfResults inspect.
If you inspect the results of that, I see nothing in the status summary
mentioning the objects creation:
*================*
*STATISTICAL SAMPLING RESULTS*
*elapsed CPU time: 21 ms*
*monitoring interval: 1.0 ms*
*0 pageFaults 2 objFaults 0 gcMs 171368 edenBytesUsed*
Any idea?
BTW, I am with 3.3.3 under CentOS 7.
--
Mariano
http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20170529/1d6f7691/attachment.html>
More information about the Glass
mailing list