[Nfd-dev] [EXT] NFD Profiling tool

Junxiao Shi shijunxiao at email.arizona.edu
Mon Dec 27 09:42:15 PST 2021


Hi Ahmed

Code coverage options allow you to gain insights on how often each part of
code is called and how long it takes to execute, but does not represent the
performance.
You must use a production build, such as those available on
https://nfd-nightly.ndn.today or built without any flags, for performance
measurements.

The goodput of ndnchunks is indeed CPU dependent.
You need a CPU with high single-core performance to get good speeds.

Below results were from a recent NFD-nightly build, tested with the
following commands:
dd if=/dev/urandom bs=1MiB count=100 | ndnputchunks /A
ndncatchunks /A >/dev/null
Each test was executed only once, but you can see the order of magnitude.

BeagleBone Black, AM335x ARMv7 @ 1.00GHz
All segments have been received.
Time elapsed: 52.4614 seconds
Segments received: 13108
Transferred size: 104858 kB
Goodput: 15.990046 Mbit/s
Congestion marks: 19 (caused 8 window decreases)
Timeouts: 18 (caused 2 window decreases)
Retransmitted segments: 17 (0.129524%), skipped: 1
RTT min/avg/max = 5.158/697.682/1218.870 ms

Dedicated server, Intel Xeon Gold 6240 @ 2.60GHz
All segments have been received.
Time elapsed: 1.44266 seconds
Segments received: 13108
Transferred size: 104858 kB
Goodput: 581.468758 Mbit/s
Congestion marks: 46 (caused 26 window decreases)
Timeouts: 2895 (caused 1 window decreases)
Retransmitted segments: 2895 (18.0904%), skipped: 0
RTT min/avg/max = 0.214/25.518/250.909 ms

KVM server, AMD Ryzen 9 3950X @ 3.50GHz
All segments have been received.
Time elapsed: 3.25011 seconds
Segments received: 13108
Transferred size: 104858 kB
Goodput: 258.102087 Mbit/s
Congestion marks: 28 (caused 12 window decreases)
Timeouts: 212 (caused 1 window decreases)
Retransmitted segments: 48 (0.364853%), skipped: 164
RTT min/avg/max = 0.726/43.642/295.405 ms

KVM server, Intel Xeon E-2288G @ 3.70GHz
All segments have been received.
Time elapsed: 10.1643 seconds
Segments received: 13108
Transferred size: 104858 kB
Goodput: 82.529791 Mbit/s
Congestion marks: 59 (caused 14 window decreases)
Timeouts: 1750 (caused 8 window decreases)
Retransmitted segments: 1641 (11.1262%), skipped: 109
RTT min/avg/max = 0.197/23.531/908.446 ms

Yours, Junxiao

On Fri, Dec 24, 2021 at 8:16 PM Ahmed Taffal via Nfd-dev <
nfd-dev at lists.cs.ucla.edu> wrote:

> *External Email*
> Thank you! it worked now.
>
> Regarding NFD performance, you said it depends on the CPU, but in my
> experiment when I used the NDNchunk tool to fetch a 100MB file (packet size
> to 8KB), I got a goodput of 43Mbps (it is calculated using the
> ndncatchunk), and the CPU usage of the NFD was not more than 15%. So, in
> this case, can I say that the reason for having this goodput is related to
> the NFD implementation? or there is a way to get better performance?
>
> Thanks in advance,
> Regards,
> Ahmed
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/nfd-dev/attachments/20211227/93321d78/attachment.html>


More information about the Nfd-dev mailing list