netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: "David S. Miller" <davem@davemloft.net>
Cc: netdev@vger.kernel.org, kelly@au1.ibm.com, rusty@rustcorp.com.au
Subject: Re: [Netchannel] Full TCP receiving support.
Date: Wed, 24 May 2006 13:38:49 +0400	[thread overview]
Message-ID: <20060524093849.GA7482@2ka.mipt.ru> (raw)
In-Reply-To: <20060522163414.GA5426@2ka.mipt.ru>

[-- Attachment #1: Type: text/plain, Size: 1493 bytes --]

Hello, developers.

Initial TCP benchmark.
After tweaking some stuff I run netchannel vs socket TCP benchmark.
Unfortunately currently I'm unable to run 1Gbit test, since my test
machine is slightly broken... So only 100Mbit for now.

Performance graph attached.
Speed is the same, CPU usage is the same 
(socket CPU usage is 1% (or 20% :) more than netchannel one, but let's
throw this away as some experimental error).

Netchannel was setup in copy_to_user mode, so it was not expected to be
faster or eat less CPU, but main purpose of this test was to show that
netchannels with _all_ protocol processing moved to process' context can
be at least that fast as when it is splitted into pieces.
I've found some links in the web and blogs where some developers completely
disagree with VJ idea of moving stuff into process context...
Well, this should break theirs mostly theoretical arguments.

It is clear that using memcpy setup CPU usage numbers (at least) for netchannel 
are noticebly better than for sockets (see previous posted benchmarks). 
I will start changing core networking code to accept different copying 
"actor" methods which will allow to use netchannels preallocated mapped area 
instead of copy_to_user().

Full patch and userspace application are available from netchannel homepage [1].

Thank you.

1. Netchannel homepage.
http://tservice.net.ru/~s0mbre/old/?section=projects&item=netchannel

Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>

-- 
	Evgeniy Polyakov

[-- Attachment #2: netchannel_speed.png --]
[-- Type: image/png, Size: 7126 bytes --]

      reply	other threads:[~2006-05-24  9:38 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-26 11:47 [PATCH 1/3] Rough VJ Channel Implementation - vj_core.patch Kelly Daly
2006-04-26  7:33 ` David S. Miller
2006-04-27  3:31   ` Kelly Daly
2006-04-27  6:25     ` David S. Miller
2006-04-27 11:51       ` Evgeniy Polyakov
2006-04-27 20:09         ` David S. Miller
2006-04-28  6:05           ` Evgeniy Polyakov
2006-05-04  2:59       ` Kelly Daly
2006-05-04 23:22         ` David S. Miller
2006-05-05  1:31           ` Rusty Russell
2006-04-26  7:59 ` David S. Miller
2006-05-04  7:28   ` Kelly Daly
2006-05-04 23:11     ` David S. Miller
2006-05-05  2:48       ` Kelly Daly
2006-05-16  1:02         ` Kelly Daly
2006-05-16  1:05           ` David S. Miller
2006-05-16  1:15             ` Kelly Daly
2006-05-16  5:16           ` David S. Miller
2006-06-22  2:05             ` Kelly Daly
2006-06-22  3:58               ` James Morris
2006-06-22  4:31                 ` Arnaldo Carvalho de Melo
2006-06-22  4:36                 ` YOSHIFUJI Hideaki / 吉藤英明
2006-07-08  0:05               ` David Miller
2006-05-16  6:19           ` [1/1] netchannel subsystem Evgeniy Polyakov
2006-05-16  6:57             ` David S. Miller
2006-05-16  6:59               ` Evgeniy Polyakov
2006-05-16  7:06                 ` David S. Miller
2006-05-16  7:15                   ` Evgeniy Polyakov
2006-05-16  7:07                 ` Evgeniy Polyakov
2006-05-16 17:34               ` [1/1] Netchannel subsyste Evgeniy Polyakov
2006-05-18 10:34                 ` Netchannel subsystem update Evgeniy Polyakov
2006-05-20 15:52                   ` Evgeniy Polyakov
2006-05-22  6:06                     ` David S. Miller
2006-05-22 16:34                       ` [Netchannel] Full TCP receiving support Evgeniy Polyakov
2006-05-24  9:38                         ` Evgeniy Polyakov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060524093849.GA7482@2ka.mipt.ru \
    --to=johnpol@2ka.mipt.ru \
    --cc=davem@davemloft.net \
    --cc=kelly@au1.ibm.com \
    --cc=netdev@vger.kernel.org \
    --cc=rusty@rustcorp.com.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).