Top Banner
ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester 1 vlbi_udp Throughput Performance and Stability. Richard Hughes-Jones The University of Manchester www.hep.man.ac.uk/~rich/ then “Talks”
16

vlbi_udp Throughput Performance and Stability.

Jan 25, 2016

Download

Documents

brasen

vlbi_udp Throughput Performance and Stability. Richard Hughes-Jones The University of Manchester www.hep.man.ac.uk/~rich/ then “Talks”. Ring buffer. vlbi_udp Flow Diagram. Vlbi_control. vlbi_send. vlbi_recv. Control thread. Control thread. TCP Control. Disk. Memory. Disk. Memory. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester1

vlbi_udp

Throughput Performance and Stability.

Richard Hughes-Jones The University of Manchester

www.hep.man.ac.uk/~rich/ then “Talks”

Page 2: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester2

vlbi_udp Flow Diagram

Ring buffer

Input thread

Ring buffer

Send thread

Disk Memory

Receive thread

Output thread

Disk Memory

From Simon Casey

UDP Data

TCP Control

Control thread Control thread

Vlbi_control

vlbi_send vlbi_recv

Page 3: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester3

iGrid2002 monolithic code Convert to use pthreads

control Data input Data output

Code branch for Simon’s file transfer tests Work on vlbi_recv:

Output thread polled for data in the ring buffer – burned CPU Input thread signals output thread when there is work to do – else wait on

semaphore – packet loss at high rate, variable thoughput Output thread uses sched_yield() when no work to do – CPU used

Network performance – in progress

History or the story so far:

Page 4: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester4

Instability: 2 streams into JIVE, March 2006From Simon Casey

Page 5: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester5

L1 ; 0; 0; 0; 100; 0; 0; 0;;L2 ; 0; 0; 0; 99; 0; 0; 0;;L3 ; 0; 0; 0; 99; 0; 0; 0;;L4 ; 2; 0; 43; 53; 0; 1; 18

Early B2B UDP Tests Kernel 2.6.6 (May06) vlbi_recv semaphore Wait 15 us; signal 200 events Unstable throughput

~815 Mbit/s Packet loss ~ 0.05%

Lost at top of IP stack

Inter-packet time

Processing time mean 0.1166 sigma 0.3493

CPU load:

vlbi_recv_k266_105d_w12_11May06

770

775

780

785

790

795

800

805

810

815

820

0 10 20 30 40 50 60 70 80

Time between frames us

Wir

e R

ate

Mb

it/s

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

Packet

loss

vlbi_recv_k266_105d_w12_11May06

110

1001000

10000100000

100000010000000

0 20 40 60 80 100 120 140 160

Time between frames us

N(t

)

vlbi_recv_k266_105d_w12_11May06

110

1001000

10000100000

100000010000000

0 20 40 60 80 100 120

Packet process time usN

(t)

Page 6: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester6

Confirm with B2B UDP Tests Kernel 2.6.6 (Aug06) vlbi_recv semaphore Wait 15 us; signal 100 events Throughput a bit unstable

~815 Mbit/s Packet loss ~ 0.05%

Lost at top of IP stack

CPU number & % packet loss Have loss when using same CPU

as that servicing interrupts

Confirmed by many udpmon tests !

vlbi_udp-sig k266 w15 N100 17Aug06

0

2

4

6

8

0 10000 20000 30000 40000 50000 60000 70000 80000

ThousandsPacket Number

CP

U n

o

0

5

10

15

20

Pac

ket

loss

CPU num

num lost

vlbi_udp-sig k266 w15 N100 17Aug06

700

720

740

760

780

800

820

840

0 200 400 600 800 1000 1200 1400

Time s

Wir

e R

ate

Mb

it/s

0

0.02

0.04

0.06

0.08

0.1

% P

acke

t lo

ss

Page 7: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester7

vlbi_udp-sig k269 w12 N200 29Aug06

1

100

10000

1000000

100000000

10000000000

0 20 40 60 80 100 120 140 160

Time between frames us

N(t

)Cpu0 : 0.0% us, 0.0% sy, 0.0% ni, 99.3% id, 0.3% wa, 0.3% hi, 0.0% siCpu1 : 0.3% us, 0.0% sy, 0.0% ni, 99.3% id, 0.3% wa, 0.0% hi, 0.0% siCpu2 : 0.3% us, 0.0% sy, 0.0% ni, 99.7% id, 0.0% wa, 0.0% hi, 0.0% siCpu3 : 6.0% us, 17.0% sy, 0.0% ni, 40.3% id, 0.0% wa, 1.0% hi, 35.7% si

B2B UDP Tests – different kernel Kernel 2.6.9 vlbi_recv semaphore Wait 12 us; signal 200 events Stable throughput

999 Mbit/s variation less than 1 Mbit/s No packet loss

Inter-packet time

Processing time mean 0.1206 sigma 0.3274

CPU load:

vlbi_udp-sig k269 w12 N200 29Aug06

980

985

990

995

1000

0 500 1000 1500 2000 2500 3000 3500 4000 4500

Time between frames us

Wir

e R

ate

Mb

it/s

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Packet

loss

vlbi_udp-sig k269 w12 N200 29Aug06

1

100

10000

1000000

100000000

10000000000

0 20 40 60 80 100 120

Packet process time usN

(t)

Page 8: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester8

Cpu0 : 3.7% us, 8.0% sy, 0.0% ni, 88.4% id, 0.0% wa, 0.0% hi, 0.0% si Cpu1 : 1.0% us, 4.0% sy, 0.0% ni, 95.0% id, 0.0% wa, 0.0% hi, 0.0% si Cpu2 : 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si Cpu3 : 11.6% us, 22.9% sy, 0.0% ni, 41.9% id, 0.0% wa, 1.0% hi, 22.6% si

B2B UDP Testsvlbi_recv_k269_110d_w20_29Aug06

600

602

604

606

608

610

612

614

616

618

620

0 1000 2000 3000 4000 5000

Time between frames us

Wir

e R

ate

Mb

it/s

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Packet

loss

vlbi_recv_k269_110d_w20_29Aug06

1

10

100

100010000

100000

100000010000000

1000000001000000000

0 20 40 60 80 100 120 140 160

Time between frames us

N(t

)

vlbi_recv_k269_110d_w20_29Aug06

110

1001000

10000100000

100000010000000

1000000001000000000

0 20 40 60 80 100 120

Packet process time us

N(t

)

Kernel 2.6.9 vlbi_recv sched_yield() Wait 20 us Stable throughput

612.5 Mbit/s variation less than 1 Mbit/s No packet loss

Inter-packet time

Processing time mean 0.1005 sigma 0.1438

CPU load:

Page 9: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester9

vlbi_udp_recv_k269_110d_w12_29Aug06

980

985

990

995

1000

0 500 1000 1500 2000 2500 3000

Time between frames us

Wir

e R

ate

Mb

it/s

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Packet

loss

Cpu0 : 0.0% us, 0.0% sy, 0.0% ni, 99.7% id, 0.3% wa, 0.0% hi, 0.0% si Cpu1 : 11.3% us, 88.7% sy, 0.0% ni, 0.0% id, 0.0% wa, 0.0% hi, 0.0% si Cpu2 : 0.3% us, 0.0% sy, 0.0% ni, 99.3% id, 0.3% wa, 0.0% hi, 0.0% si Cpu3 : 9.3% us, 15.6% sy, 0.0% ni, 37.5% id, 0.0% wa, 1.3% hi, 36.2% si

B2B UDP Tests Kernel 2.6.9 vlbi_recv sched_yield() Wait 12 us Stable throughput

999 Mbit/s variation less than 1 Mbit/s No packet loss

Inter-packet time

Processing time mean 0.1005 sigma 0.1438

CPU load:

vlbi_udp_recv_k269_110d_w12_29Aug06

1

100

10000

1000000

100000000

10000000000

0 20 40 60 80 100 120 140 160

Time between frames us

N(t

)

vlbi_udp_recv_k269_110d_w12_29Aug06

1

100

10000

1000000

100000000

10000000000

0 20 40 60 80 100 120

Packet process time us

N(t

)

Page 10: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester10

Next Steps

Fix the timing precision – again! Test with latest 2.6.16 and 2.6.17 kernels Why does shed_yield() take more CPU time? Is it

a problem or not? Test on long-distance Networks

Production (packet switched) UKLight

Test at 4-8 Gbit

Page 11: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester11

Any Questions?

Page 12: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester12

More Information Some URLs 1 UKLight web site: http://www.uklight.ac.uk MB-NG project web site: http://www.mb-ng.net/ DataTAG project web site: http://www.datatag.org/ UDPmon / TCPmon kit + writeup:

http://www.hep.man.ac.uk/~rich/net Motherboard and NIC Tests:

http://www.hep.man.ac.uk/~rich/net/nic/GigEth_tests_Boston.ppt& http://datatag.web.cern.ch/datatag/pfldnet2003/ “Performance of 1 and 10 Gigabit Ethernet Cards with Server Quality Motherboards” FGCS Special issue 2004 http:// www.hep.man.ac.uk/~rich/

TCP tuning information may be found at:http://www.ncne.nlanr.net/documentation/faq/performance.html & http://www.psc.edu/networking/perf_tune.html

TCP stack comparisons:“Evaluation of Advanced TCP Stacks on Fast Long-Distance Production Networks” Journal of Grid Computing 2004

PFLDnet http://www.ens-lyon.fr/LIP/RESO/pfldnet2005/ Dante PERT http://www.geant2.net/server/show/nav.00d00h002

Page 13: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester13

Lectures, tutorials etc. on TCP/IP: www.nv.cc.va.us/home/joney/tcp_ip.htm www.cs.pdx.edu/~jrb/tcpip.lectures.html www.raleigh.ibm.com/cgi-bin/bookmgr/BOOKS/EZ306200/CCONTENTS www.cisco.com/univercd/cc/td/doc/product/iaabu/centri4/user/scf4ap1.htm www.cis.ohio-state.edu/htbin/rfc/rfc1180.html www.jbmelectronics.com/tcp.htm

Encylopaedia http://www.freesoft.org/CIE/index.htm

TCP/IP Resources www.private.org.il/tcpip_rl.html

Understanding IP addresses http://www.3com.com/solutions/en_US/ncs/501302.html

Configuring TCP (RFC 1122) ftp://nic.merit.edu/internet/documents/rfc/rfc1122.txt

Assigned protocols, ports etc (RFC 1010) http://www.es.net/pub/rfcs/rfc1010.txt & /etc/protocols

More Information Some URLs 2

Page 14: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester14

Backup Slides

Page 15: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester15

VLBI Network Topology

Page 16: vlbi_udp Throughput Performance and Stability.

ESLEA VLBI Bits&Bytes Workshop , 31 Aug 2006, R. Hughes-Jones Manchester16

Geant2 Launch event, June 2005