Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Message from discussion Speed impact of node::MakeCallback
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Jann Horn  
View profile  
 More options Apr 7 2012, 7:06 pm
From: Jann Horn <jannh...@googlemail.com>
Date: Sun, 08 Apr 2012 01:06:43 +0200
Local: Sat, Apr 7 2012 7:06 pm
Subject: Re: [node-dev] Speed impact of node::MakeCallback

Am Sonntag, den 08.04.2012, 00:59 +0200 schrieb Ben Noordhuis:

> On Sun, Apr 8, 2012 at 00:38, Jann Horn <jannh...@googlemail.com> wrote:
> > Hello,
> > I've been using a little ad-filtering proxy I built using node for some
> > time now, and today I had a look at its CPU usage while flash was
> > prefetching a very large youtube video. Well, it was relatively high, I
> > think, but the only thing it should be doing at that time is using
> > the .pipe() method to pipe from one HTTP stream to another one.

> > Well, I was surprised to see that node was wasting ~2.5% of its CPU
> > usage on v8::String::New calls in node::MakeCallback, and that
> > node::MakeCallback in total has a CPU overhead that amounts to ~7% of
> > the total CPU time node uses in this case. Shouldn't it at least be
> > possible to cache the symbol string? And couldn't node maybe also avoid
> > calling v8::Object::Get each time it wants to call into userland (~3.6%
> > )?

> > Are these things right or did I make some huge mistake? If they are
> > right, would it be possible to make this stuff a bit faster? Reducing
> > the CPU usage by 5% seems like a relatively big speed improvement to me.

> > Node version: 0.6.14

> > Call graph centered on MakeCallback:
> > http://thejh.github.com/callgraph.png

> > Raw callgrind output:
> > http://thejh.github.com/callgrind.out.19701

> Yes, it's a known issue and something we'll address in v0.8, probably
> by scrapping MakeCallback() and moving back to Persistent<T> handles.

Wasn't MakeCallback() also supposed to handle the domains stuff? And
don't many C++ modules use that?

  signature.asc
< 1K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.