From 97f17497d162afdb82c8704bf097f0fee3724b2e Mon Sep 17 00:00:00 2001 From: "C.J. Collier" Date: Tue, 14 Jun 2016 07:50:17 -0700 Subject: Imported Upstream version 16.04 Change-Id: I77eadcd8538a9122e4773cbe55b24033dc451757 Signed-off-by: C.J. Collier --- .../prog_guide/img/architecture-overview.svg | 1011 ++++++++ doc/guides/prog_guide/img/blk_diag_dropper.png | Bin 0 -> 55303 bytes doc/guides/prog_guide/img/bond-mode-0.svg | 672 ++++++ doc/guides/prog_guide/img/bond-mode-1.svg | 758 ++++++ doc/guides/prog_guide/img/bond-mode-2.svg | 736 ++++++ doc/guides/prog_guide/img/bond-mode-3.svg | 736 ++++++ doc/guides/prog_guide/img/bond-mode-4.svg | 818 +++++++ doc/guides/prog_guide/img/bond-mode-5.svg | 676 ++++++ doc/guides/prog_guide/img/bond-overview.svg | 155 ++ doc/guides/prog_guide/img/crypto_op.svg | 75 + doc/guides/prog_guide/img/crypto_xform_chain.svg | 145 ++ doc/guides/prog_guide/img/cryptodev_sym_sess.svg | 66 + doc/guides/prog_guide/img/data_struct_per_port.png | Bin 0 -> 58769 bytes doc/guides/prog_guide/img/drop_probability_eq3.png | Bin 0 -> 3205 bytes doc/guides/prog_guide/img/drop_probability_eq4.png | Bin 0 -> 2737 bytes .../prog_guide/img/drop_probability_graph.png | Bin 0 -> 62349 bytes doc/guides/prog_guide/img/eq2_expression.png | Bin 0 -> 1614 bytes doc/guides/prog_guide/img/eq2_factor.png | Bin 0 -> 995 bytes doc/guides/prog_guide/img/ewma_filter_eq_1.png | Bin 0 -> 840 bytes doc/guides/prog_guide/img/ewma_filter_eq_2.png | Bin 0 -> 1462 bytes .../prog_guide/img/ex_data_flow_tru_dropper.png | Bin 0 -> 32578 bytes doc/guides/prog_guide/img/figure32.png | Bin 0 -> 11603 bytes doc/guides/prog_guide/img/figure33.png | Bin 0 -> 65216 bytes doc/guides/prog_guide/img/figure34.png | Bin 0 -> 11581 bytes doc/guides/prog_guide/img/figure35.png | Bin 0 -> 75012 bytes doc/guides/prog_guide/img/figure37.png | Bin 0 -> 6934 bytes doc/guides/prog_guide/img/figure38.png | Bin 0 -> 7372 bytes doc/guides/prog_guide/img/figure39.png | Bin 0 -> 55986 bytes doc/guides/prog_guide/img/flow_tru_droppper.png | Bin 0 -> 30870 bytes doc/guides/prog_guide/img/hier_sched_blk.png | Bin 0 -> 36328 bytes doc/guides/prog_guide/img/ivshmem.png | Bin 0 -> 44920 bytes doc/guides/prog_guide/img/kernel_nic_intf.png | Bin 0 -> 185839 bytes doc/guides/prog_guide/img/kni_traffic_flow.png | Bin 0 -> 366308 bytes doc/guides/prog_guide/img/linuxapp_launch.svg | 762 ++++++ doc/guides/prog_guide/img/m_definition.png | Bin 0 -> 1261 bytes doc/guides/prog_guide/img/malloc_heap.svg | 1052 +++++++++ doc/guides/prog_guide/img/mbuf1.svg | 582 +++++ doc/guides/prog_guide/img/mbuf2.svg | 1262 ++++++++++ doc/guides/prog_guide/img/memory-management.svg | 2164 +++++++++++++++++ doc/guides/prog_guide/img/memory-management2.svg | 2301 ++++++++++++++++++ doc/guides/prog_guide/img/mempool.svg | 2434 ++++++++++++++++++++ doc/guides/prog_guide/img/multi_process_memory.svg | 525 +++++ doc/guides/prog_guide/img/packet_distributor1.png | Bin 0 -> 99482 bytes doc/guides/prog_guide/img/packet_distributor2.png | Bin 0 -> 102867 bytes doc/guides/prog_guide/img/pipe_prefetch_sm.png | Bin 0 -> 71898 bytes doc/guides/prog_guide/img/pkt_drop_probability.png | Bin 0 -> 46368 bytes doc/guides/prog_guide/img/pkt_flow_kni.png | Bin 0 -> 51088 bytes .../prog_guide/img/pkt_proc_pipeline_qos.png | Bin 0 -> 93198 bytes doc/guides/prog_guide/img/prefetch_pipeline.png | Bin 0 -> 56358 bytes doc/guides/prog_guide/img/ring-dequeue1.svg | 690 ++++++ doc/guides/prog_guide/img/ring-dequeue2.svg | 653 ++++++ doc/guides/prog_guide/img/ring-dequeue3.svg | 648 ++++++ doc/guides/prog_guide/img/ring-enqueue1.svg | 599 +++++ doc/guides/prog_guide/img/ring-enqueue2.svg | 643 ++++++ doc/guides/prog_guide/img/ring-enqueue3.svg | 638 +++++ doc/guides/prog_guide/img/ring-modulo1.svg | 807 +++++++ doc/guides/prog_guide/img/ring-modulo2.svg | 851 +++++++ doc/guides/prog_guide/img/ring-mp-enqueue1.svg | 738 ++++++ doc/guides/prog_guide/img/ring-mp-enqueue2.svg | 779 +++++++ doc/guides/prog_guide/img/ring-mp-enqueue3.svg | 816 +++++++ doc/guides/prog_guide/img/ring-mp-enqueue4.svg | 816 +++++++ doc/guides/prog_guide/img/ring-mp-enqueue5.svg | 724 ++++++ doc/guides/prog_guide/img/ring1.svg | 386 ++++ doc/guides/prog_guide/img/sched_hier_per_port.png | Bin 0 -> 58973 bytes doc/guides/prog_guide/img/tbl24_tbl8.png | Bin 0 -> 95193 bytes doc/guides/prog_guide/img/tbl24_tbl8_tbl8.png | Bin 0 -> 114003 bytes doc/guides/prog_guide/img/vhost_net_arch.png | Bin 0 -> 251431 bytes 67 files changed, 26718 insertions(+) create mode 100644 doc/guides/prog_guide/img/architecture-overview.svg create mode 100644 doc/guides/prog_guide/img/blk_diag_dropper.png create mode 100644 doc/guides/prog_guide/img/bond-mode-0.svg create mode 100644 doc/guides/prog_guide/img/bond-mode-1.svg create mode 100644 doc/guides/prog_guide/img/bond-mode-2.svg create mode 100644 doc/guides/prog_guide/img/bond-mode-3.svg create mode 100644 doc/guides/prog_guide/img/bond-mode-4.svg create mode 100644 doc/guides/prog_guide/img/bond-mode-5.svg create mode 100644 doc/guides/prog_guide/img/bond-overview.svg create mode 100644 doc/guides/prog_guide/img/crypto_op.svg create mode 100644 doc/guides/prog_guide/img/crypto_xform_chain.svg create mode 100644 doc/guides/prog_guide/img/cryptodev_sym_sess.svg create mode 100644 doc/guides/prog_guide/img/data_struct_per_port.png create mode 100644 doc/guides/prog_guide/img/drop_probability_eq3.png create mode 100644 doc/guides/prog_guide/img/drop_probability_eq4.png create mode 100644 doc/guides/prog_guide/img/drop_probability_graph.png create mode 100644 doc/guides/prog_guide/img/eq2_expression.png create mode 100644 doc/guides/prog_guide/img/eq2_factor.png create mode 100644 doc/guides/prog_guide/img/ewma_filter_eq_1.png create mode 100644 doc/guides/prog_guide/img/ewma_filter_eq_2.png create mode 100644 doc/guides/prog_guide/img/ex_data_flow_tru_dropper.png create mode 100644 doc/guides/prog_guide/img/figure32.png create mode 100644 doc/guides/prog_guide/img/figure33.png create mode 100644 doc/guides/prog_guide/img/figure34.png create mode 100644 doc/guides/prog_guide/img/figure35.png create mode 100644 doc/guides/prog_guide/img/figure37.png create mode 100644 doc/guides/prog_guide/img/figure38.png create mode 100644 doc/guides/prog_guide/img/figure39.png create mode 100644 doc/guides/prog_guide/img/flow_tru_droppper.png create mode 100644 doc/guides/prog_guide/img/hier_sched_blk.png create mode 100644 doc/guides/prog_guide/img/ivshmem.png create mode 100644 doc/guides/prog_guide/img/kernel_nic_intf.png create mode 100644 doc/guides/prog_guide/img/kni_traffic_flow.png create mode 100644 doc/guides/prog_guide/img/linuxapp_launch.svg create mode 100644 doc/guides/prog_guide/img/m_definition.png create mode 100644 doc/guides/prog_guide/img/malloc_heap.svg create mode 100644 doc/guides/prog_guide/img/mbuf1.svg create mode 100644 doc/guides/prog_guide/img/mbuf2.svg create mode 100644 doc/guides/prog_guide/img/memory-management.svg create mode 100644 doc/guides/prog_guide/img/memory-management2.svg create mode 100644 doc/guides/prog_guide/img/mempool.svg create mode 100644 doc/guides/prog_guide/img/multi_process_memory.svg create mode 100644 doc/guides/prog_guide/img/packet_distributor1.png create mode 100644 doc/guides/prog_guide/img/packet_distributor2.png create mode 100644 doc/guides/prog_guide/img/pipe_prefetch_sm.png create mode 100644 doc/guides/prog_guide/img/pkt_drop_probability.png create mode 100644 doc/guides/prog_guide/img/pkt_flow_kni.png create mode 100644 doc/guides/prog_guide/img/pkt_proc_pipeline_qos.png create mode 100644 doc/guides/prog_guide/img/prefetch_pipeline.png create mode 100644 doc/guides/prog_guide/img/ring-dequeue1.svg create mode 100644 doc/guides/prog_guide/img/ring-dequeue2.svg create mode 100644 doc/guides/prog_guide/img/ring-dequeue3.svg create mode 100644 doc/guides/prog_guide/img/ring-enqueue1.svg create mode 100644 doc/guides/prog_guide/img/ring-enqueue2.svg create mode 100644 doc/guides/prog_guide/img/ring-enqueue3.svg create mode 100644 doc/guides/prog_guide/img/ring-modulo1.svg create mode 100644 doc/guides/prog_guide/img/ring-modulo2.svg create mode 100644 doc/guides/prog_guide/img/ring-mp-enqueue1.svg create mode 100644 doc/guides/prog_guide/img/ring-mp-enqueue2.svg create mode 100644 doc/guides/prog_guide/img/ring-mp-enqueue3.svg create mode 100644 doc/guides/prog_guide/img/ring-mp-enqueue4.svg create mode 100644 doc/guides/prog_guide/img/ring-mp-enqueue5.svg create mode 100644 doc/guides/prog_guide/img/ring1.svg create mode 100644 doc/guides/prog_guide/img/sched_hier_per_port.png create mode 100644 doc/guides/prog_guide/img/tbl24_tbl8.png create mode 100644 doc/guides/prog_guide/img/tbl24_tbl8_tbl8.png create mode 100644 doc/guides/prog_guide/img/vhost_net_arch.png (limited to 'doc/guides/prog_guide/img') diff --git a/doc/guides/prog_guide/img/architecture-overview.svg b/doc/guides/prog_guide/img/architecture-overview.svg new file mode 100644 index 00000000..c0f85bf2 --- /dev/null +++ b/doc/guides/prog_guide/img/architecture-overview.svg @@ -0,0 +1,1011 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + rte_malloc + + + + rte_eal + libc + + + + rte_ring + + + + rte_mempool + + + + rte_mbuf + + + + rte_timer + + + + + + + X uses Y + Allocation of namedmemory zones usinglibc's malloc() + Environment abstractionlayer: RTE loading, memoryallocation, time reference,PCI access, logging + Timer facilities. Basedon HPET interface thatis provided by EAL. + Handle a pool of objectsusing a ring to storethem. Allow bulkenqueue/dequeue andper-CPU cache. + Fixed-size lockless FIFO for storing objectsin a table. + Manipulation of packetbuffers carrying networkdata. + + rte_debug + Provides debug helpers + + + + X + Y + + diff --git a/doc/guides/prog_guide/img/blk_diag_dropper.png b/doc/guides/prog_guide/img/blk_diag_dropper.png new file mode 100644 index 00000000..d2ef8fe6 Binary files /dev/null and b/doc/guides/prog_guide/img/blk_diag_dropper.png differ diff --git a/doc/guides/prog_guide/img/bond-mode-0.svg b/doc/guides/prog_guide/img/bond-mode-0.svg new file mode 100644 index 00000000..e9742c77 --- /dev/null +++ b/doc/guides/prog_guide/img/bond-mode-0.svg @@ -0,0 +1,672 @@ + + + + +image/svg+xmlPage-4Rectangle.7User ApplicationUser Application +Sheet.2Rectangle.38DPDKDPDK +Rectangle.16bonded ethdevbonded ethdev +Rectangle.11ethdev portethdev port +Rectangle.14ethdev portethdev port +Rectangle.15ethdev portethdev port +Simple Double Arrow.14Simple ArrowSimple Arrow.37Simple Arrow.38Simple Arrow.39Square.11411 +Square.11522 +Square.11633 +Square.11744 +Square.11855 +Square.12011 +Square.12122 +Square.12233 +Square.12344 +Square.12455 + \ No newline at end of file diff --git a/doc/guides/prog_guide/img/bond-mode-1.svg b/doc/guides/prog_guide/img/bond-mode-1.svg new file mode 100644 index 00000000..58e9eddc --- /dev/null +++ b/doc/guides/prog_guide/img/bond-mode-1.svg @@ -0,0 +1,758 @@ + + + + +image/svg+xmlPage-4Rectangle.40User ApplicationUser Application +Sheet.40Rectangle.38DPDKDPDK +Rectangle.16bonded ethdevbonded ethdev +Rectangle.11ethdev portethdev port +Rectangle.14ethdev portethdev port +Rectangle.15ethdev portethdev port +Simple Double Arrow.47Simple Arrow.47Simple Arrow.49Square.10811 +Square.10922 +Square.11033 +Square.11111 +Square.11222 +Square.11333 + \ No newline at end of file diff --git a/doc/guides/prog_guide/img/bond-mode-2.svg b/doc/guides/prog_guide/img/bond-mode-2.svg new file mode 100644 index 00000000..5b9eed69 --- /dev/null +++ b/doc/guides/prog_guide/img/bond-mode-2.svg @@ -0,0 +1,736 @@ + + + + +image/svg+xmlPage-4Rectangle.151User ApplicationUser Application +Sheet.56Rectangle.38DPDKDPDK +Rectangle.16bonded ethdevbonded ethdev +Rectangle.11ethdev portethdev port +Rectangle.14ethdev portethdev port +Rectangle.15ethdev portethdev port +Simple Double Arrow.158Simple Arrow.159Simple Arrow.160Simple Arrow.161Simple Arrow.162Square.16311 +Square.16422 +Square.16533 +Square.16644 +Square.16755 +Square.16866 +Sheet.73Square.17222 +Square.17344 +Square.17566 +Sheet.77Square.16911 +Square.17033 +Square.17155 + \ No newline at end of file diff --git a/doc/guides/prog_guide/img/bond-mode-3.svg b/doc/guides/prog_guide/img/bond-mode-3.svg new file mode 100644 index 00000000..b2288a46 --- /dev/null +++ b/doc/guides/prog_guide/img/bond-mode-3.svg @@ -0,0 +1,736 @@ + + + + +image/svg+xmlPage-4Rectangle.74User ApplicationUser Application +Sheet.82Rectangle.38DPDKDPDK +Rectangle.16bonded ethdevbonded ethdev +Rectangle.11ethdev portethdev port +Rectangle.14ethdev portethdev port +Rectangle.15ethdev portethdev port +Simple Double Arrow.81Simple Arrow.82Simple Arrow.83Simple Arrow.84Simple Arrow.85Sheet.93Square.12511 +Square.12622 +Square.12733 +Sheet.97Square.12511 +Square.12622 +Square.12733 +Sheet.101Square.12511 +Square.12622 +Square.12733 +Sheet.105Square.12511 +Square.12622 +Square.12733 + \ No newline at end of file diff --git a/doc/guides/prog_guide/img/bond-mode-4.svg b/doc/guides/prog_guide/img/bond-mode-4.svg new file mode 100644 index 00000000..2016d435 --- /dev/null +++ b/doc/guides/prog_guide/img/bond-mode-4.svg @@ -0,0 +1,818 @@ + + + + +image/svg+xmlPage-4Rectangle.177User ApplicationUser Application +Sheet.110Rectangle.38DPDKDPDK +Rectangle.16bonded ethdevbonded ethdev +Rectangle.11ethdev portethdev port +Rectangle.14ethdev portethdev port +Rectangle.15ethdev portethdev port +Simple Double Arrow.184Simple Arrow.185Simple Arrow.186Simple Arrow.187Simple Arrow.188Square.18911 +Square.19022 +Square.19133 +Square.19244 +Square.19355 +Square.19466 +Square.17222 +Square.17344 +Square.19866 +Square.16911 +Square.17033 +Square.17155 +Square.203OO +Square.204OO +Square.205OO + \ No newline at end of file diff --git a/doc/guides/prog_guide/img/bond-mode-5.svg b/doc/guides/prog_guide/img/bond-mode-5.svg new file mode 100644 index 00000000..cadffbb2 --- /dev/null +++ b/doc/guides/prog_guide/img/bond-mode-5.svg @@ -0,0 +1,676 @@ + + + + +image/svg+xmlPage-4Rectangle.209User ApplicationUser Application +Sheet.137Rectangle.38DPDKDPDK +Rectangle.16bonded ethdevbonded ethdev +Rectangle.11ethdev portethdev port +Rectangle.14ethdev portethdev port +Rectangle.15ethdev portethdev port +Simple Double Arrow.216Simple Arrow.217Simple Arrow.218Simple Arrow.219Simple Arrow.220Sheet.148Rectangle50065006 +Rectangle.24250055005 +Rectangle.24300010001 +Rectangle.24400020002 +Rectangle.2461200312003 +Rectangle.24700010001 +Rectangle.24800020002 +Rectangle.24950065006 +Rectangle.25050055005 +Rectangle.2511200312003 + \ No newline at end of file diff --git a/doc/guides/prog_guide/img/bond-overview.svg b/doc/guides/prog_guide/img/bond-overview.svg new file mode 100644 index 00000000..27259f08 --- /dev/null +++ b/doc/guides/prog_guide/img/bond-overview.svg @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + Page-1 + + Rectangle.38 + DPDK + + DPDK + + Rectangle.8 + bonded ethdev + + + + + bonded ethdev + + Rectangle + User Application + + + + + User Application + + Rectangle.5 + ethdev port + + + + + ethdev port + + Rectangle.6 + ethdev port + + + + + ethdev port + + Rectangle.7 + ethdev port + + + + + ethdev port + + Rectangle.9 + ethdev port + + + + + ethdev port + + Rectangle.10 + ethdev port + + + + + ethdev port + + Simple Double Arrow + + + + Simple Double Arrow.30 + + + + Simple Double Arrow.42 + + + + diff --git a/doc/guides/prog_guide/img/crypto_op.svg b/doc/guides/prog_guide/img/crypto_op.svg new file mode 100644 index 00000000..96e3affa --- /dev/null +++ b/doc/guides/prog_guide/img/crypto_op.svg @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + Page-1 + + Rounded Rectangle.24 + Crypto Operation + + Crypto Operation + + Rounded Rectangle.7 + Operation Specific Data (struct rte_crypto_sym_op) + + Operation Specific Data (struct rte_crypto_sym_op) + + Rounded Rectangle.8 + private data + + + + + private data + + Rounded Rectangle.9 + General Operation Data (struct rte_crypto_op) + + General Operation Data (struct rte_crypto_op) + + diff --git a/doc/guides/prog_guide/img/crypto_xform_chain.svg b/doc/guides/prog_guide/img/crypto_xform_chain.svg new file mode 100644 index 00000000..4670a07e --- /dev/null +++ b/doc/guides/prog_guide/img/crypto_xform_chain.svg @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Page-1 + + Rounded Rectangle.24 + Symmetric Transform (struct rte_crypto_sym_xform) + + Symmetric Transform (struct rte_crypto_sym_xform) + + Rounded Rectangle.25 + Transform Parameters struct rte_crypto_auth_xform struct rte_... + + + + + Transform Parameters struct rte_crypto_auth_xform struct rte_crypto_cipher_xform + + Rounded Rectangle.26 + next transform (struct rte_crypto_sym_xform *) + + next transform (struct rte_crypto_sym_xform *) + + Rounded Rectangle.29 + transform type (enum rte_crypto_sym_xform_type) + + transform type (enum rte_crypto_sym_xform_type) + + Rounded Rectangle.30 + Symmetric Transform (struct rte_crypto_sym_xform) + + Symmetric Transform (struct rte_crypto_sym_xform) + + Rounded Rectangle.31 + Transform Parameters struct rte_crypto_auth_xform struct rte_... + + + + + Transform Parameters struct rte_crypto_auth_xform struct rte_crypto_cipher_xform + + Rounded Rectangle.32 + next transform (struct rte_crypto_sym_xform *) + + next transform (struct rte_crypto_sym_xform *) + + Rounded Rectangle.33 + transform type (enum rte_crypto_sym_xform_type) + + transform type (enum rte_crypto_sym_xform_type) + + Dynamic connector + + + + diff --git a/doc/guides/prog_guide/img/cryptodev_sym_sess.svg b/doc/guides/prog_guide/img/cryptodev_sym_sess.svg new file mode 100644 index 00000000..e5f41ec5 --- /dev/null +++ b/doc/guides/prog_guide/img/cryptodev_sym_sess.svg @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + Page-1 + + Rounded Rectangle.12 + Crypto Symmetric Session + + Crypto Symmetric Session + + Rounded Rectangle.13 + Private Session Data + + + + + Private Session Data + + Rounded Rectangle.15 + General Session Data (struct rte_cryptodev_sym_session) + + General Session Data (struct rte_cryptodev_sym_session) + + diff --git a/doc/guides/prog_guide/img/data_struct_per_port.png b/doc/guides/prog_guide/img/data_struct_per_port.png new file mode 100644 index 00000000..ab80052f Binary files /dev/null and b/doc/guides/prog_guide/img/data_struct_per_port.png differ diff --git a/doc/guides/prog_guide/img/drop_probability_eq3.png b/doc/guides/prog_guide/img/drop_probability_eq3.png new file mode 100644 index 00000000..790f0a3f Binary files /dev/null and b/doc/guides/prog_guide/img/drop_probability_eq3.png differ diff --git a/doc/guides/prog_guide/img/drop_probability_eq4.png b/doc/guides/prog_guide/img/drop_probability_eq4.png new file mode 100644 index 00000000..ef8e765e Binary files /dev/null and b/doc/guides/prog_guide/img/drop_probability_eq4.png differ diff --git a/doc/guides/prog_guide/img/drop_probability_graph.png b/doc/guides/prog_guide/img/drop_probability_graph.png new file mode 100644 index 00000000..e6e18985 Binary files /dev/null and b/doc/guides/prog_guide/img/drop_probability_graph.png differ diff --git a/doc/guides/prog_guide/img/eq2_expression.png b/doc/guides/prog_guide/img/eq2_expression.png new file mode 100644 index 00000000..6ffe6c2e Binary files /dev/null and b/doc/guides/prog_guide/img/eq2_expression.png differ diff --git a/doc/guides/prog_guide/img/eq2_factor.png b/doc/guides/prog_guide/img/eq2_factor.png new file mode 100644 index 00000000..ff8c9019 Binary files /dev/null and b/doc/guides/prog_guide/img/eq2_factor.png differ diff --git a/doc/guides/prog_guide/img/ewma_filter_eq_1.png b/doc/guides/prog_guide/img/ewma_filter_eq_1.png new file mode 100644 index 00000000..de6955bf Binary files /dev/null and b/doc/guides/prog_guide/img/ewma_filter_eq_1.png differ diff --git a/doc/guides/prog_guide/img/ewma_filter_eq_2.png b/doc/guides/prog_guide/img/ewma_filter_eq_2.png new file mode 100644 index 00000000..465a6e64 Binary files /dev/null and b/doc/guides/prog_guide/img/ewma_filter_eq_2.png differ diff --git a/doc/guides/prog_guide/img/ex_data_flow_tru_dropper.png b/doc/guides/prog_guide/img/ex_data_flow_tru_dropper.png new file mode 100644 index 00000000..184bc57e Binary files /dev/null and b/doc/guides/prog_guide/img/ex_data_flow_tru_dropper.png differ diff --git a/doc/guides/prog_guide/img/figure32.png b/doc/guides/prog_guide/img/figure32.png new file mode 100644 index 00000000..5215113f Binary files /dev/null and b/doc/guides/prog_guide/img/figure32.png differ diff --git a/doc/guides/prog_guide/img/figure33.png b/doc/guides/prog_guide/img/figure33.png new file mode 100644 index 00000000..f0670eb0 Binary files /dev/null and b/doc/guides/prog_guide/img/figure33.png differ diff --git a/doc/guides/prog_guide/img/figure34.png b/doc/guides/prog_guide/img/figure34.png new file mode 100644 index 00000000..caa2517a Binary files /dev/null and b/doc/guides/prog_guide/img/figure34.png differ diff --git a/doc/guides/prog_guide/img/figure35.png b/doc/guides/prog_guide/img/figure35.png new file mode 100644 index 00000000..42053f00 Binary files /dev/null and b/doc/guides/prog_guide/img/figure35.png differ diff --git a/doc/guides/prog_guide/img/figure37.png b/doc/guides/prog_guide/img/figure37.png new file mode 100644 index 00000000..20be4aaa Binary files /dev/null and b/doc/guides/prog_guide/img/figure37.png differ diff --git a/doc/guides/prog_guide/img/figure38.png b/doc/guides/prog_guide/img/figure38.png new file mode 100644 index 00000000..261c561f Binary files /dev/null and b/doc/guides/prog_guide/img/figure38.png differ diff --git a/doc/guides/prog_guide/img/figure39.png b/doc/guides/prog_guide/img/figure39.png new file mode 100644 index 00000000..d2db6a49 Binary files /dev/null and b/doc/guides/prog_guide/img/figure39.png differ diff --git a/doc/guides/prog_guide/img/flow_tru_droppper.png b/doc/guides/prog_guide/img/flow_tru_droppper.png new file mode 100644 index 00000000..5c8fe1cc Binary files /dev/null and b/doc/guides/prog_guide/img/flow_tru_droppper.png differ diff --git a/doc/guides/prog_guide/img/hier_sched_blk.png b/doc/guides/prog_guide/img/hier_sched_blk.png new file mode 100644 index 00000000..876d072c Binary files /dev/null and b/doc/guides/prog_guide/img/hier_sched_blk.png differ diff --git a/doc/guides/prog_guide/img/ivshmem.png b/doc/guides/prog_guide/img/ivshmem.png new file mode 100644 index 00000000..2b34a2cf Binary files /dev/null and b/doc/guides/prog_guide/img/ivshmem.png differ diff --git a/doc/guides/prog_guide/img/kernel_nic_intf.png b/doc/guides/prog_guide/img/kernel_nic_intf.png new file mode 100644 index 00000000..2408cc31 Binary files /dev/null and b/doc/guides/prog_guide/img/kernel_nic_intf.png differ diff --git a/doc/guides/prog_guide/img/kni_traffic_flow.png b/doc/guides/prog_guide/img/kni_traffic_flow.png new file mode 100644 index 00000000..a7e74966 Binary files /dev/null and b/doc/guides/prog_guide/img/kni_traffic_flow.png differ diff --git a/doc/guides/prog_guide/img/linuxapp_launch.svg b/doc/guides/prog_guide/img/linuxapp_launch.svg new file mode 100644 index 00000000..0ac450df --- /dev/null +++ b/doc/guides/prog_guide/img/linuxapp_launch.svg @@ -0,0 +1,762 @@ + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + Master lcore + lcore 1 + lcore 2 + + main() + + rte_eal_init() + + rte_eal_memory_init()rte_eal_logs_init()rte_eal_pci_init()... + + pthread_create(1) + + pthread_create(2) + + + per-thread init + + wait + + + + + per-thread init + + wait + + + + wait all threads + + + + per_lcore_ app_init() + + per_lcore_ app_init() + + rte_eal_mp_wait_lcore() + + application... + + wait + + wait + + + + + + + + + application... + application... + + + rte_eal_remote_lauch(app) + + + + + rte_eal_remote_lauch( per_lcore_app_init) + + other inits (libs, drivers) + + + + diff --git a/doc/guides/prog_guide/img/m_definition.png b/doc/guides/prog_guide/img/m_definition.png new file mode 100644 index 00000000..d05e8812 Binary files /dev/null and b/doc/guides/prog_guide/img/m_definition.png differ diff --git a/doc/guides/prog_guide/img/malloc_heap.svg b/doc/guides/prog_guide/img/malloc_heap.svg new file mode 100644 index 00000000..d6bcc848 --- /dev/null +++ b/doc/guides/prog_guide/img/malloc_heap.svg @@ -0,0 +1,1052 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + struct malloc_heap + prev + prev + prev + prev + prev + prev + Free element header(struct malloc_elem, state = FREE) + Used element header(struct malloc_elem, state = BUSY) + size + Memseg 0 + Memseg 1 + prev + prev + next_free + next_free + free_head + prev + Dummy Elements:Size = 0State = BUSY + pad + Pad element header(struct malloc_elem, state = PAD) + Generic element pointers + Malloc element header:state = BUSYsize = <size>pad = <padsize> + size + Free / Unallocated data space + Pad element header:state = PADpad = padsize + Used / allocated data space + Padding / unavailable space + + diff --git a/doc/guides/prog_guide/img/mbuf1.svg b/doc/guides/prog_guide/img/mbuf1.svg new file mode 100644 index 00000000..5bd84d1b --- /dev/null +++ b/doc/guides/prog_guide/img/mbuf1.svg @@ -0,0 +1,582 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + struct rte_mbuf + + + + + m->buf_addr(m->buf_physaddr is thecorresponding physical address) + rte_pktmbuf_mtod(m) + mbufstruct + m->pkt.next = NULL + rte_pktmbuf_pktlen(m)or rte_pktmbuf_datalen(m) + + headroom + + tailroom + + + diff --git a/doc/guides/prog_guide/img/mbuf2.svg b/doc/guides/prog_guide/img/mbuf2.svg new file mode 100644 index 00000000..347b9b12 --- /dev/null +++ b/doc/guides/prog_guide/img/mbuf2.svg @@ -0,0 +1,1262 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + multi-segmented rte_mbuf + + + + m->pkt.next = NULL + m->pkt.next = mseg3 + m->pkt.next = mseg2 + m + mseg2 + mseg3 + + rte_pktmbuf_mtod(m) + rte_pktmbuf_pktlen(m) = rte_pktmbuf_datalen(m) + rte_pktmbuf_datalen(mseg2) + rte_pktmbuf_datalen(mseg3) + + + rte_pktmbuf_datalen(m) + + rte_pktmbuf_datalen(m) + + rte_pktmbuf_datalen(m) + + diff --git a/doc/guides/prog_guide/img/memory-management.svg b/doc/guides/prog_guide/img/memory-management.svg new file mode 100644 index 00000000..3dbd5260 --- /dev/null +++ b/doc/guides/prog_guide/img/memory-management.svg @@ -0,0 +1,2164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Channel + Rank + packet 1 + packet 2 + padding + 0 + 1 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + 0 + 2 + 2 + 2 + 3 + 3 + memory addresses + + pkt1 starts atchannel 0, rank 0 + + + pkt2 starts atchannel 1, rank 1 + + 64 bytes wide + 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + A + B + C + D + E + F + 10 + 11 + 12 + 13 + 14 + 15 + ... + Block num + 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + A + B + C + D + E + F + 0 + 1 + 2 + 3 + + diff --git a/doc/guides/prog_guide/img/memory-management2.svg b/doc/guides/prog_guide/img/memory-management2.svg new file mode 100644 index 00000000..b0cce18d --- /dev/null +++ b/doc/guides/prog_guide/img/memory-management2.svg @@ -0,0 +1,2301 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Channel + Rank + packet 1 + packet 2 + 0 + 1 + 0 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + memory addresses + + pkt0 starts atchannel 0, rank 1 + + + pkt2 starts atchannel 1, rank 0(no padding needed) + + 64 bytes wide + 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + A + B + C + D + E + F + 10 + 11 + 12 + 13 + 14 + 15 + ... + Block num + 0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + A + B + C + D + E + F + 0 + 1 + 2 + 3 + 2 + 1 + 0 + 2 + DIMM + 0 + 0 + 0 + 1 + 1 + 1 + + diff --git a/doc/guides/prog_guide/img/mempool.svg b/doc/guides/prog_guide/img/mempool.svg new file mode 100644 index 00000000..5185bd09 --- /dev/null +++ b/doc/guides/prog_guide/img/mempool.svg @@ -0,0 +1,2434 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + mempool + + + + + + rte_ring: stores memory pool's free objects + + + + + + + + + + + Object caches for + + + + + + + + + obj n + + + + + + + obj 0 + header + trailer + + elt_size + + + + + + + + + + + + + + + obj 2 + + + + + + + + obj 1 + + + + + + + + + + + + + + + + core 0 + core 1 + + Core 0 + + + App A - ring + + + Core 1 + + + App B - ring + + + + + + App C - ring + + + + + + + If cache empty get from ringif cache full move to ring + + diff --git a/doc/guides/prog_guide/img/multi_process_memory.svg b/doc/guides/prog_guide/img/multi_process_memory.svg new file mode 100644 index 00000000..03f17d70 --- /dev/null +++ b/doc/guides/prog_guide/img/multi_process_memory.svg @@ -0,0 +1,525 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + Primary Process + Secondary Process + struct rte_config + struct hugepage[] + + + IPC Queue + + + + IPC Queue + + HugepageDPDKMemory + + + Mbuf Pool + + Local Pointers + Local Pointers + Local Data + Local Data + + + + + + + + + + + + diff --git a/doc/guides/prog_guide/img/packet_distributor1.png b/doc/guides/prog_guide/img/packet_distributor1.png new file mode 100644 index 00000000..da8d4447 Binary files /dev/null and b/doc/guides/prog_guide/img/packet_distributor1.png differ diff --git a/doc/guides/prog_guide/img/packet_distributor2.png b/doc/guides/prog_guide/img/packet_distributor2.png new file mode 100644 index 00000000..6ab58a4e Binary files /dev/null and b/doc/guides/prog_guide/img/packet_distributor2.png differ diff --git a/doc/guides/prog_guide/img/pipe_prefetch_sm.png b/doc/guides/prog_guide/img/pipe_prefetch_sm.png new file mode 100644 index 00000000..983c7eff Binary files /dev/null and b/doc/guides/prog_guide/img/pipe_prefetch_sm.png differ diff --git a/doc/guides/prog_guide/img/pkt_drop_probability.png b/doc/guides/prog_guide/img/pkt_drop_probability.png new file mode 100644 index 00000000..a3a9e99f Binary files /dev/null and b/doc/guides/prog_guide/img/pkt_drop_probability.png differ diff --git a/doc/guides/prog_guide/img/pkt_flow_kni.png b/doc/guides/prog_guide/img/pkt_flow_kni.png new file mode 100644 index 00000000..ab730bb4 Binary files /dev/null and b/doc/guides/prog_guide/img/pkt_flow_kni.png differ diff --git a/doc/guides/prog_guide/img/pkt_proc_pipeline_qos.png b/doc/guides/prog_guide/img/pkt_proc_pipeline_qos.png new file mode 100644 index 00000000..3bc2e7bf Binary files /dev/null and b/doc/guides/prog_guide/img/pkt_proc_pipeline_qos.png differ diff --git a/doc/guides/prog_guide/img/prefetch_pipeline.png b/doc/guides/prog_guide/img/prefetch_pipeline.png new file mode 100644 index 00000000..dc4843c4 Binary files /dev/null and b/doc/guides/prog_guide/img/prefetch_pipeline.png differ diff --git a/doc/guides/prog_guide/img/ring-dequeue1.svg b/doc/guides/prog_guide/img/ring-dequeue1.svg new file mode 100644 index 00000000..7857e143 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-dequeue1.svg @@ -0,0 +1,690 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + cons_head + cons_tail + prod_head + prod_tail + + local variables + + structure state + + obj4 + + + cons_head + prod_tail + cons_next + + + diff --git a/doc/guides/prog_guide/img/ring-dequeue2.svg b/doc/guides/prog_guide/img/ring-dequeue2.svg new file mode 100644 index 00000000..9bed3734 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-dequeue2.svg @@ -0,0 +1,653 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj2 + obj3 + + cons_head + cons_tail + prod_head + prod_tail + + local variables + + structure state + + + cons_head + prod_tail + cons_next + + + obj4 + + + diff --git a/doc/guides/prog_guide/img/ring-dequeue3.svg b/doc/guides/prog_guide/img/ring-dequeue3.svg new file mode 100644 index 00000000..876aa876 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-dequeue3.svg @@ -0,0 +1,648 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj2 + obj3 + cons_head + cons_tail + prod_head + prod_tail + + local variables + + structure state + + + cons_head + prod_tail + cons_next + + + obj4 + + + diff --git a/doc/guides/prog_guide/img/ring-enqueue1.svg b/doc/guides/prog_guide/img/ring-enqueue1.svg new file mode 100644 index 00000000..e7030ebf --- /dev/null +++ b/doc/guides/prog_guide/img/ring-enqueue1.svg @@ -0,0 +1,599 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + local variables + + structure state + + + cons_tail + prod_head + prod_next + + + diff --git a/doc/guides/prog_guide/img/ring-enqueue2.svg b/doc/guides/prog_guide/img/ring-enqueue2.svg new file mode 100644 index 00000000..964b66a7 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-enqueue2.svg @@ -0,0 +1,643 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + local variables + + structure state + + + cons_tail + prod_head + prod_next + + + obj4 + + diff --git a/doc/guides/prog_guide/img/ring-enqueue3.svg b/doc/guides/prog_guide/img/ring-enqueue3.svg new file mode 100644 index 00000000..192ef7c2 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-enqueue3.svg @@ -0,0 +1,638 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + cons_head + cons_tail + prod_head + prod_tail + + local variables + + structure state + + + cons_tail + prod_head + prod_next + + + obj4 + + diff --git a/doc/guides/prog_guide/img/ring-modulo1.svg b/doc/guides/prog_guide/img/ring-modulo1.svg new file mode 100644 index 00000000..852e7335 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-modulo1.svg @@ -0,0 +1,807 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 16384 + 32768 + 49152 + 65536 + 0 + 0 + 16384 + 16384 + 32768 + 49152 + 65536 + ring + + + chct + phpt + + value forindexes(prod_head,prod_tail, ...) + + used entries in ring + size = 16384mask = 16383ph = pt = 14000ct = ch = 3000used_entries = (pt - ch) % 65536 = 11000free_entries = (mask + ct - ph) % 65536 = 5383 + + used_entries + + diff --git a/doc/guides/prog_guide/img/ring-modulo2.svg b/doc/guides/prog_guide/img/ring-modulo2.svg new file mode 100644 index 00000000..68f046b6 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-modulo2.svg @@ -0,0 +1,851 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 16384 + 32768 + 49152 + 65536 + 0 + 0 + 16384 + 16384 + 32768 + 49152 + 65536 + ring + + + chct + phpt + + value forindexes(prod_head,prod_tail, ...) + + used entries in ring + size = 16384mask = 16383ph = pt = 6000ct = ch = 59000used_entries = (pt - ch) % 65536 = 12536free_entries = (mask + ct - ph) % 65536 = 3847 + + + + + used_entries + + diff --git a/doc/guides/prog_guide/img/ring-mp-enqueue1.svg b/doc/guides/prog_guide/img/ring-mp-enqueue1.svg new file mode 100644 index 00000000..31c32dd5 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-mp-enqueue1.svg @@ -0,0 +1,738 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + local variables core 2 + + structure state + + + cons_tail + prod_head + prod_next + + + local variablescore 1 + + + cons_tail + prod_head + prod_next + + + diff --git a/doc/guides/prog_guide/img/ring-mp-enqueue2.svg b/doc/guides/prog_guide/img/ring-mp-enqueue2.svg new file mode 100644 index 00000000..0b30d0b4 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-mp-enqueue2.svg @@ -0,0 +1,779 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + local variablescore 2 + + structure state + + + cons_tail + prod_head + prod_next + + + local variablescore 1 + + + cons_tail + prod_head + prod_next + + compare and swap succeedson core 1 and fails on core 2 + + + diff --git a/doc/guides/prog_guide/img/ring-mp-enqueue3.svg b/doc/guides/prog_guide/img/ring-mp-enqueue3.svg new file mode 100644 index 00000000..00b50c67 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-mp-enqueue3.svg @@ -0,0 +1,816 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + local variablescore 2 + + structure state + + + cons_tail + prod_head + prod_next + + + local variablescore 1 + + + cons_tail + prod_head + prod_next + + compare and swap succeedson core 2 + + obj4 + obj5 + + diff --git a/doc/guides/prog_guide/img/ring-mp-enqueue4.svg b/doc/guides/prog_guide/img/ring-mp-enqueue4.svg new file mode 100644 index 00000000..1a5caa8f --- /dev/null +++ b/doc/guides/prog_guide/img/ring-mp-enqueue4.svg @@ -0,0 +1,816 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + local variablescore 2 + + structure state + + + cons_tail + prod_head + prod_next + + + local variablescore 1 + + + cons_tail + prod_head + prod_next + + core 2 is waiting forr->prod_tail == prod_head + + obj4 + obj5 + + diff --git a/doc/guides/prog_guide/img/ring-mp-enqueue5.svg b/doc/guides/prog_guide/img/ring-mp-enqueue5.svg new file mode 100644 index 00000000..dfc42138 --- /dev/null +++ b/doc/guides/prog_guide/img/ring-mp-enqueue5.svg @@ -0,0 +1,724 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + cons_head + cons_tail + prod_head + prod_tail + + local variablescore 2 + + structure state + + + cons_tail + prod_head + prod_next + + + obj4 + obj5 + + diff --git a/doc/guides/prog_guide/img/ring1.svg b/doc/guides/prog_guide/img/ring1.svg new file mode 100644 index 00000000..fa40465e --- /dev/null +++ b/doc/guides/prog_guide/img/ring1.svg @@ -0,0 +1,386 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + obj1 + obj2 + obj3 + + + cons_head + cons_tail + prod_head + prod_tail + + diff --git a/doc/guides/prog_guide/img/sched_hier_per_port.png b/doc/guides/prog_guide/img/sched_hier_per_port.png new file mode 100644 index 00000000..462e88aa Binary files /dev/null and b/doc/guides/prog_guide/img/sched_hier_per_port.png differ diff --git a/doc/guides/prog_guide/img/tbl24_tbl8.png b/doc/guides/prog_guide/img/tbl24_tbl8.png new file mode 100644 index 00000000..c39b55bd Binary files /dev/null and b/doc/guides/prog_guide/img/tbl24_tbl8.png differ diff --git a/doc/guides/prog_guide/img/tbl24_tbl8_tbl8.png b/doc/guides/prog_guide/img/tbl24_tbl8_tbl8.png new file mode 100644 index 00000000..eb99e2ab Binary files /dev/null and b/doc/guides/prog_guide/img/tbl24_tbl8_tbl8.png differ diff --git a/doc/guides/prog_guide/img/vhost_net_arch.png b/doc/guides/prog_guide/img/vhost_net_arch.png new file mode 100644 index 00000000..0005260f Binary files /dev/null and b/doc/guides/prog_guide/img/vhost_net_arch.png differ -- cgit 1.2.3-korg