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