Hi Jerin,

On Mon, Nov 04, 2019 at 12:59:40PM +0000, Jerin Jacob Kollanukkaran wrote:
> Hi Anatoly and All,
> 
> Just wondering what would the side effect of lowering a  _bit_ of static 
> uint64_t baseaddr = 0x100000000 in 
> lib/librte_eal/common/eal_common_memory.c for 64bit systems.
> 
> Use case:
> If we _reserve_ VA address which less than 2^32 ONLY for packet 
> buffers(mbuf), The use cases like
> Pipeline, where need to transfer packets from one core to another cores can 
> use ring element
> size of 4B(32bit) which will reduce the a lot of read and write  to enable 
> better
> performance.
> 
> i.e Since upper 32bits will be zero, it is matter of typecasting of item to 
> read and write from/to ring.
> Essentially memcpy overhead for moving pointers over the ring will be half.
> 
> Is baseaddr set to 2^32 to make sure that secondary process will have more 
> _chance_ of getting
> the baseaddr in order for DPDK to work?
> 
> Thoughts on above? On general to reduce the mbuf pointer storage requirement 
> for ring?

There are use cases where the mbufs take more than 4GB of memory,
typically for protocols that do a lot of buffering/queing. So if
anything is done in that direction, it has to be an option.

Reply via email to