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