X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fmempool%2Fring.rst;h=37c67b32996b07e8922ff11a120c9b1c8c538d84;hb=e1187407b440e79426084a7b141f918c646ab9b1;hp=a22ca80672adebc20cba583410eba0a219d32ddd;hpb=b7ea4b16351ff6cd93641e2fc9af4a46279e57bf;p=dpdk.git diff --git a/doc/guides/mempool/ring.rst b/doc/guides/mempool/ring.rst index a22ca80672..37c67b3299 100644 --- a/doc/guides/mempool/ring.rst +++ b/doc/guides/mempool/ring.rst @@ -12,12 +12,14 @@ and can be selected via mempool ops API: - ``ring_mp_mc`` The underlying **rte_ring** operates in multi-thread producer, - multi-thread consumer sync mode. + multi-thread consumer sync mode. For more information please refer to: + :ref:`Ring_Library_MPMC_Mode`. - ``ring_sp_sc`` The underlying **rte_ring** operates in single-thread producer, - single-thread consumer sync mode. + single-thread consumer sync mode. For more information please refer to: + :ref:`Ring_Library_SPSC_Mode`. - ``ring_sp_mc`` @@ -29,6 +31,22 @@ and can be selected via mempool ops API: The underlying **rte_ring** operates in multi-thread producer, single-thread consumer sync mode. +- ``ring_mt_rts`` + + For underlying **rte_ring** both producer and consumer operate in + multi-thread Relaxed Tail Sync (RTS) mode. For more information please + refer to: :ref:`Ring_Library_MT_RTS_Mode`. + +- ``ring_mt_hts`` + + For underlying **rte_ring** both producer and consumer operate in + multi-thread Head-Tail Sync (HTS) mode. For more information please + refer to: :ref:`Ring_Library_MT_HTS_Mode`. + +For 'classic' DPDK deployments (with one thread per core) the ``ring_mp_mc`` +mode is usually the most suitable and the fastest one. For overcommitted +scenarios (multiple threads share same set of cores) the ``ring_mt_rts`` or +``ring_mt_hts`` modes usually provide a better alternative. For more information about ``rte_ring`` structure, behaviour and available synchronisation modes please refer to: :doc:`../prog_guide/ring_lib`.