Netdev List
 help / color / mirror / Atom feed
From: jamal <hadi@cyberus.ca>
To: Cheng Jin <chengjin@cs.caltech.edu>
Cc: Marc Herbert <marc.herbert@free.fr>,
	"netdev@oss.sgi.com" <netdev@oss.sgi.com>
Subject: RE: TxDescriptors -> 1024 default. Please not for every NIC!
Date: 05 Jun 2004 10:37:57 -0400	[thread overview]
Message-ID: <1086446277.1592.205.camel@jzny.localdomain> (raw)
In-Reply-To: <Pine.LNX.4.44.0406021235200.17290-100000@fast2.cs.caltech.edu>

On Wed, 2004-06-02 at 15:49, Cheng Jin wrote:
> Marc,
> 
> In general, I very much agree with what you have stated about not having
> a large txqueuelen.  Txqueuelen should be something that alleviates
> the mismatch between CPU speed and NIC transmission speed,

Thats the theory. More interesting of course are bus speeds, arbitration
schemes,  RAM latencies and throughput and other dynamic bottlenecks
like system loads. 

>  temporarily.
> As long as the txqueuelne is greater than zero, say 10 just to be safe, 
> NIC will be running at full speed (unless there were inefficiencies in 
> scheduling) so there is no incentive in setting it to be an excessively 
> large value like 1000.

In theory as well, the only time you even need to queue is when theres
congestion..
In reality, totaly different ballgame. In other words its not a simple
system that you can throw Littles theorems at.

Marc, good email, at least you didnt hand wave and declare the wind was
blowing towards the south today.

My opinion:
I agree that the 1000 qlen is excessive for 10/100 - infact i think the
value should dynamically adjust itself even for gige capable NICs
(example if a gige NIC negotiates a 10Mbps speed with link partner, then
you should adjust the qlen)[1]. That wont be trivial to do - but more
importantly motivation lacks because i dont think the situation we have
right now is devastating. To clarify:
A single TCP flow will fill in any pipe you give it under proper
conditions (proper congestion control algorithms, buffer etc)[2]. 
Most apps using TCP dont care very much about latency; the only
exception would be some scientific clustering technologies using TCP for
control messaging. And for those type of apps, you should be able to 
tune the qlen to your liking using tc or ip utilities (I claim they
shouldnt be using tcp to begin with, but thats another discussion). If
you dont want to take that extra step to tune then you dont care, and
IMO you shouldnt complain.

Having said all that: i still think theres value in maybe issuing a
warning or making the default qlen selection a compile time config.


cheers,
jamal

[1] I think it would make a nice project for someone with time. I can
consult for anyone interested.
[2] Looking at the recent patches on BIC, it does seem pretty agressive
and should have no problem filling a 10Gige pipe with proper processing
power.

  reply	other threads:[~2004-06-05 14:37 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <C925F8B43D79CC49ACD0601FB68FF50CDB13D3@orsmsx408>
2004-06-02 19:14 ` TxDescriptors -> 1024 default. Please not for every NIC! Marc Herbert
2004-06-02 19:49   ` Cheng Jin
2004-06-05 14:37     ` jamal [this message]
2003-09-14 19:08 [e1000 2.6 10/11] TxDescriptors -> 1024 default Ricardo C Gonzalez
2004-05-15 12:14 ` TxDescriptors -> 1024 default. Please not for every NIC! Marc Herbert
2004-05-19  9:30   ` Marc Herbert
2004-05-19 10:27     ` Pekka Pietikainen
2004-05-19 11:54     ` Andi Kleen

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=1086446277.1592.205.camel@jzny.localdomain \
    --to=hadi@cyberus.ca \
    --cc=chengjin@cs.caltech.edu \
    --cc=marc.herbert@free.fr \
    --cc=netdev@oss.sgi.com \
    /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