Re: [PATCH] Implementation of the sendgroup() system call
From: Elad Lahav
Date: Mon May 04 2009 - 20:23:58 EST
How much is non negligible in your case?
Please see the following link
http://www.cs.uwaterloo.ca/~elahav/sendgroup/mb_pkt_size.pdf
for a graph showing the (amortised) cost of sending a single packet to a
group of 1000 recipients, using one of the three following methods:
1. A user-mode loop of sendmsg() calls
2. A kernel-mode loop of udp_sendmsg() calls
3. A single call to sendgroup()
The cost is measured in cycles and was determined using performance
counters.
In this benchmark, savings introduced by sendgroup() are primarily due
to the aviodence of multiple system calls, up to a packet size of about
1000 bytes. Obviously, proportions change for different group sizes
(though we were able to outperform method 1 with a group size as small
as 2).
--Elad
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/