[Mono-dev] Mono profiler agent for jitted code
lupus at ximian.com
Mon Apr 3 12:35:33 EDT 2006
On 04/03/06 Yeh, Jason wrote:
> > *) not require root privs (at least for a subset of the
> > capabilities or with limits designed to reduce the number of
> > interrupts per second)
> As far as I know, not requiring root privs would be a overhaul to the
> Oprofile. I doubt this can be done easily. Can you elaborate on the
> limits designed to reduce the number of interrupts per second? The
> event count allows users to do that manually. Are you referring to an
> automatic throttling or a similar scheme that would reduce the number of
> interrupts automatically?
It would be a mechanism not necessarily automatic, it could be
hard-coded. For example the event that counts executed instructions
should be set by the user to generate no more than, say 1000 interrupts
per second. A similar mechanism is in place for /dev/rtc (though in that
case the default limit is an almost uses 64 Hz). When the user asks for
a value that would generate too much overhead, it is either capped or
an error is returned.
Since assigning limits to all the possible events would be a pain, it
would be fine to allow the users to just access the most important 4-5
Increasing too much the load on a box is the only security issue that,
IMHO, requires root for oprofile. So, with the proper limit, it should
not be too hard to allow this.
> > *) have the counters virtualized per process
> > (this may be
> > already the case, I haven't looked at oprofile in a long time)
> This is still not the case. The number of counters is still limited to
> the number of physical counter in the cpu. However, we are
> experimenting with event multiplexing, but it will not be part of
> Oprofile for a while.
I meant virtualization of the counter values per-process. At the time I
looked, the values read from the counters were system-wide.
Multiplexing is of course a good feature to have (someone working on the
kernel should likely do it for /dev/rtc, too).
lupus at debian.org debian/rules
lupus at ximian.com Monkeys do it better
More information about the Mono-devel-list