Re: [v8-users] What causes a function to be optimized too many times? How do I avoid it?

2012-11-08 Thread Sven Panne
On Wed, Nov 7, 2012 at 6:29 PM, Vyacheslav Egorov vego...@chromium.orgwrote: [...] Sven recently was changing things in that neighborhood. I am CCing him. I hope he will be able to help. I am not sure which neighborhood we are talking about, but I'll take a look... ;-) -- v8-users mailing

Re: [v8-users] What causes a function to be optimized too many times? How do I avoid it?

2012-11-08 Thread Kevin Gadd
Interesting, I wonder why --trace-deopt isn't spitting out deopt notices for me. Maybe some of the output is being lost because I'm using WinDbg to capture it. I used to get deopt output there, though... Is there a way to tell which value is causing check-prototype-maps to fail? Is it a check

Re: [v8-users] What causes a function to be optimized too many times? How do I avoid it?

2012-11-08 Thread Vyacheslav Egorov
Figuring out which value requires looking at the IR dumped with --trace-hydrogen. As for logs: on Windows you can patch your chrome.exe as I describe here: http://mrale.ph/blog/2012/06/21/v8s-flags-and-chrome-on-windows.html and then a simple unix style redirection works from command prompt:

Re: [v8-users] What causes a function to be optimized too many times? How do I avoid it?

2012-11-07 Thread Vyacheslav Egorov
I asked because it is highly unlikely that any big application runs without deopts. I just tried to run the game in Chrome Canary on Mac with --js-flags=--trace-deopt --code-comments and I saw many deopts. DrawScaleF constantly deopts on check-prototype-maps. DEOPT: DrawScaleF at bailout

Re: [v8-users] What causes a function to be optimized too many times? How do I avoid it?

2012-11-06 Thread Kevin Gadd
Hi Vyacheslav, Yeah, as I said I ran with trace-opt, trace-bailout and trace-deopt turned on. So 'disabled optimization for' doesn't mean the function is deoptimized? That's really surprising to me, because I see a performance hit for those functions, and I assume that optimization being turned