589c05d96291a62c9ce1ce3ce0979ca93e6e545d
[dpdk.git] / doc / guides / prog_guide / index.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2010-2017 Intel Corporation.
3
4 Programmer's Guide
5 ==================
6
7 .. toctree::
8     :maxdepth: 3
9     :numbered:
10
11     intro
12     overview
13     env_abstraction_layer
14     service_cores
15     ring_lib
16     mempool_lib
17     mbuf_lib
18     poll_mode_drv
19     rte_flow
20     traffic_metering_and_policing
21     traffic_management
22     bbdev
23     cryptodev_lib
24     rte_security
25     rawdev
26     link_bonding_poll_mode_drv_lib
27     timer_lib
28     hash_lib
29     efd_lib
30     member_lib
31     lpm_lib
32     lpm6_lib
33     flow_classify_lib
34     packet_distrib_lib
35     reorder_lib
36     ip_fragment_reassembly_lib
37     generic_receive_offload_lib
38     generic_segmentation_offload_lib
39     pdump_lib
40     multi_proc_support
41     kernel_nic_interface
42     thread_safety_dpdk_functions
43     eventdev
44     event_ethernet_rx_adapter
45     event_timer_adapter
46     qos_framework
47     power_man
48     packet_classif_access_ctrl
49     packet_framework
50     vhost_lib
51     metrics_lib
52     port_hotplug_framework
53     source_org
54     dev_kit_build_system
55     dev_kit_root_make_help
56     extend_dpdk
57     build_app
58     ext_app_lib_make_help
59     perf_opt_guidelines
60     writing_efficient_code
61     profile_app
62     glossary
63
64
65 **Figures**
66
67 :numref:`figure_architecture-overview` :ref:`figure_architecture-overview`
68
69 :numref:`figure_linuxapp_launch` :ref:`figure_linuxapp_launch`
70
71 :numref:`figure_malloc_heap` :ref:`figure_malloc_heap`
72
73 :numref:`figure_ring1` :ref:`figure_ring1`
74
75 :numref:`figure_ring-enqueue1` :ref:`figure_ring-enqueue1`
76
77 :numref:`figure_ring-enqueue2` :ref:`figure_ring-enqueue2`
78
79 :numref:`figure_ring-enqueue3` :ref:`figure_ring-enqueue3`
80
81 :numref:`figure_ring-dequeue1` :ref:`figure_ring-dequeue1`
82
83 :numref:`figure_ring-dequeue2` :ref:`figure_ring-dequeue2`
84
85 :numref:`figure_ring-dequeue3` :ref:`figure_ring-dequeue3`
86
87 :numref:`figure_ring-mp-enqueue1` :ref:`figure_ring-mp-enqueue1`
88
89 :numref:`figure_ring-mp-enqueue2` :ref:`figure_ring-mp-enqueue2`
90
91 :numref:`figure_ring-mp-enqueue3` :ref:`figure_ring-mp-enqueue3`
92
93 :numref:`figure_ring-mp-enqueue4` :ref:`figure_ring-mp-enqueue4`
94
95 :numref:`figure_ring-mp-enqueue5` :ref:`figure_ring-mp-enqueue5`
96
97 :numref:`figure_ring-modulo1` :ref:`figure_ring-modulo1`
98
99 :numref:`figure_ring-modulo2` :ref:`figure_ring-modulo2`
100
101 :numref:`figure_memory-management` :ref:`figure_memory-management`
102
103 :numref:`figure_memory-management2` :ref:`figure_memory-management2`
104
105 :numref:`figure_mempool` :ref:`figure_mempool`
106
107 :numref:`figure_mbuf1` :ref:`figure_mbuf1`
108
109 :numref:`figure_mbuf2` :ref:`figure_mbuf2`
110
111 :numref:`figure_multi_process_memory` :ref:`figure_multi_process_memory`
112
113 :numref:`figure_kernel_nic_intf` :ref:`figure_kernel_nic_intf`
114
115 :numref:`figure_pkt_flow_kni` :ref:`figure_pkt_flow_kni`
116
117
118 :numref:`figure_pkt_proc_pipeline_qos` :ref:`figure_pkt_proc_pipeline_qos`
119
120 :numref:`figure_hier_sched_blk` :ref:`figure_hier_sched_blk`
121
122 :numref:`figure_sched_hier_per_port` :ref:`figure_sched_hier_per_port`
123
124 :numref:`figure_data_struct_per_port` :ref:`figure_data_struct_per_port`
125
126 :numref:`figure_prefetch_pipeline` :ref:`figure_prefetch_pipeline`
127
128 :numref:`figure_pipe_prefetch_sm` :ref:`figure_pipe_prefetch_sm`
129
130 :numref:`figure_blk_diag_dropper` :ref:`figure_blk_diag_dropper`
131
132 :numref:`figure_flow_tru_droppper` :ref:`figure_flow_tru_droppper`
133
134 :numref:`figure_ex_data_flow_tru_dropper` :ref:`figure_ex_data_flow_tru_dropper`
135
136 :numref:`figure_pkt_drop_probability` :ref:`figure_pkt_drop_probability`
137
138 :numref:`figure_drop_probability_graph` :ref:`figure_drop_probability_graph`
139
140 :numref:`figure_figure32` :ref:`figure_figure32`
141
142 :numref:`figure_figure33` :ref:`figure_figure33`
143
144 :numref:`figure_figure34` :ref:`figure_figure34`
145
146 :numref:`figure_figure35` :ref:`figure_figure35`
147
148 :numref:`figure_figure37` :ref:`figure_figure37`
149
150 :numref:`figure_figure38` :ref:`figure_figure38`
151
152 :numref:`figure_figure39` :ref:`figure_figure39`
153
154 :numref:`figure_efd1` :ref:`figure_efd1`
155
156 :numref:`figure_efd2` :ref:`figure_efd2`
157
158 :numref:`figure_efd3` :ref:`figure_efd3`
159
160 :numref:`figure_efd4` :ref:`figure_efd4`
161
162 :numref:`figure_efd5` :ref:`figure_efd5`
163
164 :numref:`figure_efd6` :ref:`figure_efd6`
165
166 :numref:`figure_efd7` :ref:`figure_efd7`
167
168 :numref:`figure_efd8` :ref:`figure_efd8`
169
170 :numref:`figure_efd9` :ref:`figure_efd9`
171
172 :numref:`figure_efd10` :ref:`figure_efd10`
173
174 :numref:`figure_efd11` :ref:`figure_efd11`
175
176 :numref:`figure_membership1` :ref:`figure_membership1`
177
178 :numref:`figure_membership2` :ref:`figure_membership2`
179
180 :numref:`figure_membership3` :ref:`figure_membership3`
181
182 :numref:`figure_membership4` :ref:`figure_membership4`
183
184 :numref:`figure_membership5` :ref:`figure_membership5`
185
186 :numref:`figure_membership6` :ref:`figure_membership6`
187
188 :numref:`figure_membership7` :ref:`figure_membership7`
189
190 **Tables**
191
192 :numref:`table_qos_1` :ref:`table_qos_1`
193
194 :numref:`table_qos_2` :ref:`table_qos_2`
195
196 :numref:`table_qos_3` :ref:`table_qos_3`
197
198 :numref:`table_qos_4` :ref:`table_qos_4`
199
200 :numref:`table_qos_5` :ref:`table_qos_5`
201
202 :numref:`table_qos_6` :ref:`table_qos_6`
203
204 :numref:`table_qos_7` :ref:`table_qos_7`
205
206 :numref:`table_qos_8` :ref:`table_qos_8`
207
208 :numref:`table_qos_9` :ref:`table_qos_9`
209
210 :numref:`table_qos_10` :ref:`table_qos_10`
211
212 :numref:`table_qos_11` :ref:`table_qos_11`
213
214 :numref:`table_qos_12` :ref:`table_qos_12`
215
216 :numref:`table_qos_13` :ref:`table_qos_13`
217
218 :numref:`table_qos_14` :ref:`table_qos_14`
219
220 :numref:`table_qos_15` :ref:`table_qos_15`
221
222 :numref:`table_qos_16` :ref:`table_qos_16`
223
224 :numref:`table_qos_17` :ref:`table_qos_17`
225
226 :numref:`table_qos_18` :ref:`table_qos_18`
227
228 :numref:`table_qos_19` :ref:`table_qos_19`
229
230 :numref:`table_qos_20` :ref:`table_qos_20`
231
232 :numref:`table_qos_21` :ref:`table_qos_21`
233
234 :numref:`table_qos_22` :ref:`table_qos_22`
235
236 :numref:`table_qos_23` :ref:`table_qos_23`
237
238 :numref:`table_qos_24` :ref:`table_qos_24`
239
240 :numref:`table_qos_25` :ref:`table_qos_25`
241
242 :numref:`table_qos_26` :ref:`table_qos_26`
243
244 :numref:`table_qos_27` :ref:`table_qos_27`
245
246 :numref:`table_qos_28` :ref:`table_qos_28`
247
248 :numref:`table_qos_29` :ref:`table_qos_29`
249
250 :numref:`table_qos_30` :ref:`table_qos_30`
251
252 :numref:`table_qos_31` :ref:`table_qos_31`
253
254 :numref:`table_qos_32` :ref:`table_qos_32`
255
256 :numref:`table_qos_33` :ref:`table_qos_33`
257
258 :numref:`table_qos_34` :ref:`table_qos_34`
259
260 :numref:`table_hash_lib_1` :ref:`table_hash_lib_1`
261
262 :numref:`table_hash_lib_2` :ref:`table_hash_lib_2`