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