Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions docs/vpp/configuration/dataplane/memory.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,19 @@
VPP Memory Configuration
########################

VPP heavily relies on hugepages for its memory management. Hugepages are larger memory pages that reduce the overhead of page management and improve performance for applications that require large amounts of memory, such as VPP.

Check warning on line 11 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=228

VPP supports both 2MB and 1GB hugepages, but the default and most commonly used size is 2MB. The choice of hugepage size can impact performance, with larger pages generally providing better performance for memory-intensive applications.

Check warning on line 13 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=236

Before configuring memory in VPP dataplane settings, you need to ensure that hugepages are enabled and properly configured on your system.

Check warning on line 15 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=138

.. seealso:: :ref:`Hugepages in VyOS Configuration for VPP <vpp_config_hugepages>`

Check warning on line 17 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=82

To configure memory settings for VPP, you can use the following commands in the VPP CLI:

Check warning on line 19 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=88

.. cfgcmd:: set vpp settings memory default-hugepage-size <size>

Sets the default hugepage size for VPP.

VPP uses a main heap as a central memory pool for FIB data structures entries allocations.

Check warning on line 21 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=90

Efficient memory management is crucial for VPP's performance, and the main heap plays a significant role in this.

Check warning on line 23 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=113

It can be configured using the following command:

Expand All @@ -40,10 +36,10 @@
Potential Issues and Troubleshooting
====================================

Improper configuration of main heap size can lead to performance degradation or even system instability. If VPP runs out of memory in the main heap, it may crash or exhibit erratic behavior. Symptoms you may observe include:

Check warning on line 39 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=224

- Increased latency or packet loss
- Crashes or restarts of VPP processes, especially during routing table populating (e.g., BGP session establishment)

Check warning on line 42 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=116
- Error messages related to memory allocation failures

You need to tune the main heap size based on expected FIB entries. Pay attention - same amount of routes with a single next-hop and with multiple next-hops will consume different amounts of memory.

Check warning on line 45 in docs/vpp/configuration/dataplane/memory.rst

View workflow job for this annotation

GitHub Actions / lint-doc / doc-lint

Line too long: len=197
Loading