[Webkit-unassigned] [Bug 32561] Provide a OProfile JIT agent (opagent) for the code generated by the JIT
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Apr 2 06:11:08 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=32561
--- Comment #7 from Gabor Loki <loki at webkit.org> 2010-04-02 06:11:08 PST ---
> * Can you only profile on Linux?
> * Can we remove some of our other sampling mechanisms in favor of this?
I wish I could say yes to both questions, but OProfile is only for Linux. A
kernel driver is needed at OS level. Probably it is not impossible to implement
such a module on Mac as well ;)
> * Is there a big advantage to making this a compile-time switch rather than a
> run-time switch?
There were very few samples for OProfile part of WebKit and its agent as well.
So, we can use run-time option, but it should be kept in mind not to grow and
slow down JSC with useless checks where OProfile is not supported.
> It's not clear to me when you would enable OPROFILE_JIT_AGENT vs
> OPROFILE_JIT_AGENT_WITH_SAFE_UNLOAD. This is worth an explanation in a comment
> and in the ChangeLog.
SAFE_UNLOAD should be enabled by default. If it is disabled there could be some
misplaced samples, but JSC runs faster.
> + void* vma()
> + {
> + return m_code;
> + }
>
> You've duplicated the code() function. Also, the code function says, "Keep this private!" but you've made it public. That seems wrong.
Probably we can use executableAddress(), but the m_size has to be published
anyway.
> You need to do something to ensure that no one can call this function while the LinkBuffer is in an invalid state.
What do you mean about invalid state? The state of JIT code (executable or
flushed) does not matter for OProfile. Only the memory range is needed. The
profiler will not touch that memory range at all.
Other things will be fixed. Thanks for your inputs!
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list