On 04/14/2013 11:41 PM, Nicholas Nethercote wrote:
Hi,

For https://bugzilla.mozilla.org/show_bug.cgi?id=842800 I'm interested
in adding more checks of SpiderMonkey's operation callback in
potentially long-running operations.  For example, when running the
asm.js Unreal demo, parsing takes several seconds, so in my patch I
added a check after the parsing of each statement.

I'm also seeing that IonMonkey compilation can take a while on the
demo.  Is there a loop or loops in IonMonkey that are good candidates
for adding operation callback checks?

IonMonkey compilation is currently sequential for the IonBuilder phase and the CodeGenerator::link phase. All the rest might run in a separate thread (or not in case of mono core architectures).

Before the compilation we allocate a lifo-alloc which got extend if needed by the compilation. As far as I know, everything which goes into the lifo-alloc is considered as dark-matter from the about:memory point of view.

I am not sure what you are trying to look at but what might be interesting would be to look at the usage of the lifo alloc. It would be safe to do it at the creation of each basic block, and in MIRGenerator::shouldCancel (called at each loop iteration on basic blocks) if it is safe to report such status from another thread.

--
Nicolas B. Pierron
_______________________________________________
dev-tech-js-engine-internals mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals

Reply via email to