From: ebiederm@xmission.com (Eric W. Biederman)
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: Benoit Lourdelet <blourdel@juniper.net>,
Serge Hallyn <serge.hallyn@ubuntu.com>,
"netdev\@vger.kernel.org" <netdev@vger.kernel.org>
Subject: Re: [RFC][PATCH] iproute: Faster ip link add, set and delete
Date: Wed, 27 Mar 2013 17:46:05 -0700 [thread overview]
Message-ID: <87620cpd0y.fsf@xmission.com> (raw)
In-Reply-To: <20130327104746.0ec9dcb5@nehalam.linuxnetplumber.net> (Stephen Hemminger's message of "Wed, 27 Mar 2013 10:47:46 -0700")
Stephen Hemminger <stephen@networkplumber.org> writes:
> If you need to do lots of operations the --batch mode will be significantly faster.
> One command start and one link map.
The problem in this case as I understand it is lots of independent
operations. Now maybe lxc should not shell out to ip and perform the
work itself.
> I have an updated version of link map hash (index and name). Could you test this patch
> which applies to latest version in git.
This still dumps all of the interfaces in ll_init_map causing things to
slow down noticably.
# with your patch
# time ~/projects/iproute/iproute2/ip/ip link add a4511 type veth peer name b4511
real 0m0.049s
user 0m0.000s
sys 0m0.048s
# With a hack to make ll_map_init a nop.
# time ~/projects/iproute/iproute2/ip/ip link add a4512 type veth peer name b4512
real 0m0.003s
user 0m0.000s
sys 0m0.000s
eric-ThinkPad-X220 6bed4 #
# Without any patches.
# time ~/projects/iproute/iproute2/ip/ip link add a5002 type veth peer name b5002
real 0m0.052s
user 0m0.004s
sys 0m0.044s
So it looks like dumping all of the interfaces is taking 46 miliseconds,
longer than otherwise. Causing ip to take nearly an order of magnitude
longer to run when there are a lot of interfaces, and causing ip to slow
down with each command.
So the ideal situation is probably just to fill in the ll_map on demand
instead of up front.
Eric
next prev parent reply other threads:[~2013-03-28 0:46 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-22 22:23 [RFC][PATCH] iproute: Faster ip link add, set and delete Eric W. Biederman
2013-03-22 22:27 ` Stephen Hemminger
2013-03-26 11:51 ` Benoit Lourdelet
2013-03-26 12:40 ` Eric W. Biederman
2013-03-26 14:17 ` Serge Hallyn
2013-03-26 14:33 ` Serge Hallyn
2013-03-27 13:37 ` Benoit Lourdelet
2013-03-27 15:11 ` Eric W. Biederman
2013-03-27 17:47 ` Stephen Hemminger
2013-03-28 0:46 ` Eric W. Biederman [this message]
2013-03-28 3:20 ` Serge Hallyn
2013-03-28 3:44 ` Eric W. Biederman
2013-03-28 4:28 ` Serge Hallyn
2013-03-28 5:00 ` Eric W. Biederman
2013-03-28 13:36 ` Serge Hallyn
2013-03-28 13:42 ` Benoit Lourdelet
2013-03-28 15:04 ` Serge Hallyn
2013-03-28 15:21 ` Benoit Lourdelet
2013-03-28 22:20 ` Stephen Hemminger
2013-03-28 23:52 ` Eric W. Biederman
2013-03-29 0:13 ` Eric Dumazet
2013-03-29 0:25 ` Eric W. Biederman
2013-03-29 0:43 ` Eric Dumazet
2013-03-29 1:06 ` Eric W. Biederman
2013-03-29 1:10 ` Eric Dumazet
2013-03-29 1:29 ` Eric W. Biederman
2013-03-29 1:38 ` Eric Dumazet
2013-03-30 10:09 ` Benoit Lourdelet
2013-03-30 14:44 ` Eric Dumazet
2013-03-30 16:07 ` Benoit Lourdelet
2013-03-28 20:27 ` Benoit Lourdelet
2013-03-26 15:31 ` Eric Dumazet
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=87620cpd0y.fsf@xmission.com \
--to=ebiederm@xmission.com \
--cc=blourdel@juniper.net \
--cc=netdev@vger.kernel.org \
--cc=serge.hallyn@ubuntu.com \
--cc=stephen@networkplumber.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.