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