Commit 8b9f44aa authored by Joanne Hugé's avatar Joanne Hugé

Add long packet jitter measures

parent b846ad57
...@@ -55,14 +55,29 @@ Minimum | Maximum | Average ...@@ -55,14 +55,29 @@ Minimum | Maximum | Average
An UDP packet is periodically sent from one board to another using a real time thread. The receiving board calculates the intervals between the packets it receives, and sees how much it differs from the scheduled interval. An UDP packet is periodically sent from one board to another using a real time thread. The receiving board calculates the intervals between the packets it receives, and sees how much it differs from the scheduled interval.
**Common test metadata:** Device: A20, Linux kernel version: 5.6, Task priority: 98, Interval: 1000us, Boot Parameters: isolcpus,rcu_nocbs,irqaffinity, ETF qdisc delta: None, Device and processor load: None, Test duration: 0h0, Speed (Mb/s): 1000, ETF offset: 500us, Packet route: E2E, qdisc: pfifo_fast, Client device: Shuttle **Common test metadata:** Device: A20, Linux kernel version: 5.6, Task priority: 98, Boot Parameters: isolcpus,rcu_nocbs,irqaffinity, ETF qdisc delta: None, Device and processor load: None, Speed (Mb/s): 1000, ETF offset: 500us, Packet route: E2E, qdisc: pfifo_fast, Client device: Shuttle
Metadata | Minimum | Maximum | Average | Standard deviation | Lost packets Metadata | Minimum | Maximum | Average | Standard deviation | Lost packets
----------- | ----------------- | ----------------- | ----------------- | ------------------ | ------------ ------------------------ | ----------------- | ----------------- | ----------------- | ------------------ | ------------
**XDP** | **Packet jitter** | **Packet jitter** | **Packet jitter** | **Packet jitter** | **XDP, duration, i** | **Packet jitter** | **Packet jitter** | **Packet jitter** | **Packet jitter** |
yes (11582) | 0.0000us | 100.0000us | 59.4658us | 3.4778us | 0 yes, 0h0, 1000us (11582) | 0.0000us | 100.0000us | 59.4658us | 3.4778us | 0
no (10949) | 0.0000us | 239.0000us | 140.4619us | 3.0228us | 0 no, 0h0, 1000us (10949) | 0.0000us | 239.0000us | 140.4619us | 3.0228us | 0
no, 15h1, 1000us (54075815) | 0.0000us | 550.0000us | 299.5232us | 7.1155us | 0
no, 15h0, 500us (108100303) | 0.0000us | 457.0000us | 246.4996us | 7.5832us | 0
![alt text](measures/graphs/packet_jitterPacket jitter.png "packet_jitter Graph") ![alt text](measures/graphs/packet_jitterPacket jitter.png "packet_jitter Graph")
### shuttle_a20_signal_jitter results
Two A20 boards are connected end to end with an ethernet cable to a shuttle. All devices are synchronized with PTP. The shuttle sends packets containing timestamps to the boards, and the boards emit a signal at the given timestamp. A logic analyzer measures the variation difference between the signals of the two boards.
**Common test metadata:** Device: A20, Linux kernel version: 5.6, Task priority: 98, Interval: 1000us, Boot Parameters: isolcpus,rcu_nocbs,irqaffinity, ETF qdisc delta: None, Device and processor load: None, Test duration: 0h20, Speed (Mb/s): 1000, ETF offset: 500us, Packet route: E2E, qdisc: pfifo_fast, Client device: A20, XDP: no
Minimum | Maximum | Average | Standard deviation | Lost packets
----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ------------
**Shuttle controlled A20 signal output jitter** | **Shuttle controlled A20 signal output jitter** | **Shuttle controlled A20 signal output jitter** | **Shuttle controlled A20 signal output jitter** |
0.0000us | 267.0000us | 7.7268us | 10.8222us | 0
![alt text](measures/graphs/shuttle_a20_signal_jitterShuttle controlled A20 signal output jitter.png "shuttle_a20_signal_jitter Graph")
{"cyclictest_wake-up_latency": {"ids": [3, 5], "next_id": 6}, "shuttle_signal_jitter": {"ids": [0], "next_id": 1}, "packet_jitter": {"ids": [0, 1], "next_id": 2}} {"cyclictest_wake-up_latency": {"ids": [3, 5], "next_id": 6}, "shuttle_signal_jitter": {"ids": [0], "next_id": 1}, "packet_jitter": {"ids": [0, 1, 2, 3], "next_id": 4}, "shuttle_a20_signal_jitter": {"ids": [0], "next_id": 1}}
\ No newline at end of file \ No newline at end of file
{"measure_sets": [{"measure_type": "packet_jitter", "props_names": ["Packet jitter"], "units": ["us"], "middle": 0, "props": [[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 0, 0, 1, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 0, 0, 1, 2, 0, 1, 0, 0, 0, 3, 6, 0, 1, 2, 0, 0, 1, 3, 5, 0, 4, 1, 3, 3, 2, 2, 8, 2, 7, 5, 6, 7, 1, 8, 8, 9, 10, 6, 7, 16, 13, 16, 15, 20, 22, 20, 26, 31, 26, 26, 37, 42, 43, 34, 46, 51, 51, 46, 52, 67, 58, 46, 74, 64, 69, 59, 73, 68, 78, 80, 86, 69, 99, 108, 106, 128, 143, 181, 243, 380, 634, 827, 904, 892, 1047, 2581, 9024, 32784, 94612, 189803, 239689, 176038, 70507, 18139, 4371, 1532, 963, 810, 889, 992, 1054, 1798, 4081, 8363, 12192, 11606, 11855, 19495, 29856, 28449, 20401, 15667, 16373, 23256, 46570, 86568, 97388, 63654, 37797, 35024, 45317, 70743, 147718, 426727, 1840579, 7643468, 16604094, 14932507, 6581249, 1975826, 552271, 201782, 95281, 55046, 38739, 31685, 34959, 55919, 94743, 102207, 61305, 30065, 19001, 17302, 22366, 29784, 27158, 16720, 11079, 12933, 12181, 6978, 3208, 1359, 750, 457, 345, 269, 244, 345, 1015, 6694, 41729, 138640, 234110, 216132, 125914, 51920, 17240, 5725, 2118, 1171, 923, 986, 907, 628, 362, 240, 147, 107, 111, 111, 122, 107, 87, 78, 70, 75, 72, 63, 64, 60, 56, 59, 55, 57, 54, 46, 63, 45, 45, 42, 43, 36, 41, 53, 44, 33, 45, 37, 36, 34, 36, 31, 36, 32, 38, 40, 39, 40, 33, 24, 36, 24, 26, 23, 19, 20, 25, 16, 17, 20, 12, 19, 10, 17, 10, 19, 10, 15, 18, 13, 13, 6, 13, 8, 12, 7, 5, 15, 2, 7, 4, 11, 5, 7, 2, 2, 1, 3, 4, 0, 0, 0, 2, 1, 2, 2, 3, 1, 1, 2, 0, 4, 0, 1, 1, 1, 2, 1, 4, 0, 3, 2, 0, 3, 1, 1, 0, 1, 0, 1, 1, 3, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1]], "props_type": "histogram", "metadata": {"dev": "A20", "ker": "5.6", "prio": "98", "i": "1000us", "boot_p": "isolcpus,rcu_nocbs,irqaffinity", "delta": "None", "load": "None", "duration": "15h1", "speed": "1000", "etf_offset": "500us", "route": "E2E", "qdisc": "pfifo_fast", "client": "Shuttle", "XDP": "no", "lost_packets": "0"}}]}
\ No newline at end of file
{"measure_sets": [{"measure_type": "packet_jitter", "props_names": ["Packet jitter"], "units": ["us"], "middle": 0, "props": [[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 3, 1, 1, 0, 0, 2, 1, 0, 0, 3, 4, 3, 1, 1, 2, 2, 2, 4, 3, 1, 3, 1, 1, 2, 2, 6, 2, 2, 8, 3, 8, 2, 6, 3, 1, 4, 7, 3, 8, 9, 2, 3, 7, 9, 5, 7, 2, 12, 8, 6, 13, 7, 8, 13, 13, 14, 28, 20, 26, 14, 17, 15, 15, 20, 16, 25, 23, 27, 16, 23, 23, 15, 26, 30, 31, 36, 24, 32, 34, 29, 31, 41, 39, 39, 33, 40, 43, 52, 60, 38, 54, 59, 65, 73, 79, 77, 81, 113, 106, 133, 149, 163, 173, 192, 208, 221, 247, 262, 281, 349, 452, 640, 858, 1288, 1586, 2027, 2871, 6190, 17250, 49881, 125994, 250750, 368000, 388953, 295370, 161643, 65698, 22649, 7867, 3593, 2618, 2960, 4346, 7962, 13954, 20978, 25920, 30252, 39579, 50304, 54222, 47953, 38350, 33269, 32912, 38839, 57170, 95154, 142689, 166353, 144805, 106611, 88372, 112845, 236036, 686368, 2236048, 7080370, 17904596, 27910153, 23587056, 12210063, 5499632, 2658847, 1144952, 434896, 187722, 103735, 70669, 58580, 66391, 105404, 163998, 179993, 134776, 77428, 46102, 36019, 35875, 42541, 51666, 54172, 44751, 33553, 28005, 24909, 17985, 10772, 5690, 2989, 1744, 1252, 1192, 1608, 4042, 16765, 62785, 177611, 336327, 416005, 357208, 220203, 105898, 43466, 17162, 7379, 3943, 2726, 2210, 1686, 1264, 879, 623, 448, 372, 318, 253, 284, 252, 227, 230, 203, 176, 206, 161, 163, 136, 136, 168, 128, 132, 125, 160, 135, 116, 130, 118, 93, 135, 120, 119, 112, 95, 96, 87, 90, 92, 73, 68, 70, 65, 54, 47, 43, 41, 52, 45, 28, 35, 30, 37, 23, 28, 27, 30, 26, 21, 18, 19, 28, 23, 24, 17, 21, 23, 18, 18, 12, 22, 19, 21, 18, 17, 15, 31, 18, 25, 16, 19, 15, 12, 6, 12, 5, 8, 12, 5, 5, 6, 5, 6, 4, 13, 6, 3, 2, 4, 4, 1, 6, 5, 2, 2, 2, 3, 2, 3, 0, 4, 1, 2, 1, 0, 0, 3, 2, 2, 0, 1, 1, 1, 0, 0, 2, 0, 0, 1, 0, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], "props_type": "histogram", "metadata": {"dev": "A20", "ker": "5.6", "prio": "98", "i": "500us", "boot_p": "isolcpus,rcu_nocbs,irqaffinity", "delta": "None", "load": "None", "duration": "15h0", "speed": "1000", "etf_offset": "500us", "route": "E2E", "qdisc": "pfifo_fast", "client": "Shuttle", "XDP": "no", "lost_packets": "0"}}]}
\ No newline at end of file
{"measure_sets": [{"measure_type": "shuttle_a20_signal_jitter", "props_names": ["Shuttle controlled A20 signal output jitter"], "units": ["us"], "middle": 0, "props": [[258505, 195333, 118392, 79731, 61293, 45493, 35536, 30341, 28019, 26919, 25720, 23666, 21502, 18477, 16918, 14558, 10645, 8642, 7483, 6855, 6522, 6657, 7143, 7313, 7330, 7843, 8273, 8717, 9194, 9671, 9264, 7450, 5695, 4831, 4959, 5468, 6431, 6231, 5967, 6196, 5874, 4927, 3818, 2493, 1999, 1617, 1235, 1135, 557, 177, 102, 69, 68, 51, 40, 44, 41, 41, 29, 30, 33, 33, 32, 31, 26, 22, 23, 12, 19, 16, 14, 17, 7, 8, 12, 7, 4, 5, 3, 1, 1, 2, 2, 2, 0, 1, 0, 2, 0, 1, 1, 1, 0, 1, 1, 2, 1, 2, 0, 1, 0, 3, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 1, 2, 1, 2, 0, 1, 1, 1, 1, 0, 1, 1, 0, 2, 1, 0, 1, 0, 1, 1, 2, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 5, 2, 5, 1, 2, 3, 0, 2, 4, 1, 2, 2, 2, 3, 4, 5, 0, 2, 7, 3, 0, 4, 2, 3, 0, 1, 2, 2, 2, 0, 0, 3, 3, 1, 1, 0, 0, 4, 2, 0, 2, 1, 2, 1, 0, 0, 1, 2, 0, 3, 2, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]], "props_type": "histogram", "metadata": {"dev": "A20", "ker": "5.6", "prio": "98", "i": "1000us", "boot_p": "isolcpus,rcu_nocbs,irqaffinity", "delta": "None", "load": "None", "duration": "0h20", "speed": "1000", "etf_offset": "500us", "route": "E2E", "qdisc": "pfifo_fast", "client": "A20", "XDP": "no", "lost_packets": "0"}}]}
\ No newline at end of file
...@@ -54,7 +54,7 @@ done ...@@ -54,7 +54,7 @@ done
shift $((OPTIND-1)) shift $((OPTIND-1))
if [ -z "$hardware_ts" ]; then if [ -z "$hardware_ts" ]; then
opts+=" -S" opts+=" -S "
fi fi
opts+="-i $interface" opts+="-i $interface"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment