[dpdk-dev] [PATCH v3 0/3] add support for HTM lock elision for x86

Thomas Monjalon thomas.monjalon at 6wind.com
Fri Jun 19 16:38:06 CEST 2015


2015-06-19 13:08, Roman Dementiev:
> This series of patches adds methods that use hardware memory transactions (HTM)
> on fast-path for DPDK locks (a.k.a. lock elision). Here the methods are
> implemented for x86 using Restricted Transactional Memory instructions (Intel(r)
> Transactional Synchronization Extensions). The implementation fall-backs to
> the normal DPDK lock if HTM is not available or memory transactions fail. This
> is not a replacement for ALL lock usages since not all critical sections
> protected by locks are friendly to HTM. For example, an attempt to perform
> a HW I/O operation inside a hardware memory transaction always aborts
> the transaction since the CPU is not able to roll-back should the transaction
> fail. Therefore, hardware transactional locks are not advised to be used around
> rte_eth_rx_burst() and rte_eth_tx_burst() calls.
> 
> Acked-by: Bruce Richardson <bruce.richardson at intel.com>
> 
> v3 changes
> -resolved a conflict in app/test/Makefile
> -don't use angle brackets for rte_common.h include
> 
> v2 changes
> -added a documentation note about hardware limitations
> 
> 
> Roman Dementiev (3):
>   spinlock: add support for HTM lock elision for x86
>   rwlock: add support for HTM lock elision for x86
>   test scaling of HTM lock elision protecting rte_hash

Applied, thanks



More information about the dev mailing list