We have fixed the issue. You can try again with newest V8 from the bleeding_edge branch.
-- Vyacheslav Egorov On Fri, Apr 13, 2012 at 6:21 PM, Vyacheslav Egorov <[email protected]> wrote: > To ensure that this is not going to fall through, I have filed an issue: > > http://code.google.com/p/v8/issues/detail?id=2079 > > -- > Vyacheslav Egorov > > On Fri, Apr 13, 2012 at 5:19 PM, Vyacheslav Egorov <[email protected]> > wrote: >> >> No, it is definitely possible. It requires a simple analysis at the parser >> level and minor changes in Crankshaft pipeline. >> >> >> -- >> Vyacheslav Egorov >> >> >> On Fri, Apr 13, 2012 at 4:45 PM, Bert Belder <[email protected]> wrote: >>> >>> On Apr 13, 2:48 pm, Vyacheslav Egorov <[email protected]> wrote: >>> > fib in "Node's main JS thread" case is a "local" function declaration, V8 >>> > compiles recursive call as >>> s faster) than call-function which uses separate >>> > generic stub: >>> > >>> > ;;; @40: call-known-global. >>> > 0x3c5d7c2c30d 109 48bff96d452dc6150000 REX.W movq rdi,0x15c62d456df9 >>> > ;; object: 0x15c62d456df9 <JS Function fib> >>> > 0x3c5d7c2c317 119 4c89e1 REX.W movq rcx,r12 >>> > 0x3c5d7c2c31a 122 e881ffffff call 0 (0x3c5d7c2c2a0) ;; debug: >>> > position 41 >>> > ;; code: >>> > OPTIMIZED_FUNCTION >>> > >>> > vs. >>> > >>> > ;;; @52: call-function. >>> > 0x1e5a9c3a52fd 125 e85e46f6ff call 0x1e5a9c309960 ;; debug: >>> > position 139 >>> > ;; code: >>> > STUB, >>> > CallFunctionStub, argc = 1 >>> > >>> > [call function stub is a complicated generic stub that can handle all >>> > kinds >>> > of calls] >>> > >>> > -- >>> > Vyacheslav Egorov >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> > On Thu, Apr 12, 2012 at 7:29 PM, mscdex <[email protected]> wrote: >>> > > On Apr 12, 9:54 am, Tim Caswell <[email protected]> wrote: >>> > > > What makes the main thread so slow in comparison? It's the same v8 >>> > > right? >>> > >>> > > Here's something more interesting: >>> > >>> > >https://gist.github.com/2369318 >>> > >>> > > Threads_a_gogo JS thread -> 3039 (ms) 298607040 >>> > > Node's main JS thread -> 4677 (ms) 298607040 >>> > > Ratio: 1.54 times faster than main JS thread >>> > > New, separate VM -> 3065 (ms) 298607040 >>> > > Ratio: 1.01 times faster than new VM >>> > >>> > > -- >>> > > Job Board:http://jobs.nodejs.org/ >>> > > Posting guidelines: >>> > >https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>> > > You received this message because you are subscribed to the Google >>> > > Groups "nodejs" group. >>> > > To post to this group, send email to [email protected] >>> > > To unsubscribe from this group, send email to >>> > > [email protected] >>> > > For more options, visit this group at >>> > >http://groups.google.com/group/nodejs?hl=en?hl=en >>> >>> Thanks for your analysis, Vyacheslav. >>> >>> So what can we do about it? It seems that in node all functions will >>> be "local" functions because of the module system. Is it not possible >>> to have an efficient stub for these guys? >>> >>> - Bert >>> >>> -- >>> Job Board: http://jobs.nodejs.org/ >>> Posting guidelines: >>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>> You received this message because you are subscribed to the Google >>> Groups "nodejs" group. >>> To post to this group, send email to [email protected] >>> To unsubscribe from this group, send email to >>> [email protected] >>> For more options, visit this group at >>> http://groups.google.com/group/nodejs?hl=en?hl=en >> >> -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en
