OnixS C++ CME MDP Premium Market Data Handler 5.11.1
Users' manual and API documentation
Loading...
Searching...
No Matches
SolarflareFeedEngineMemoryPolicy Struct Reference

#include <OnixS/CME/MDH/SolarflareFeedEngine.h>

Public Types

enum  Enum
using Base = Messaging::UInt32

Detailed Description

The policy is applied when an ef_vi multicast link creates its receive-buffer pool. It does not affect multicast links that use standard sockets or TCP recovery connections.

Huge-page policies request explicit 2 MiB Linux HugeTLB pages. The operating system must support HugeTLB and have enough 2 MiB pages configured and available. HugeTLB mappings are allocated in whole 2 MiB pages, so their length is rounded up to a 2 MiB boundary. The requested number of buffers and the memory region registered with ef_vi are unchanged.

Note
Native is the default policy used by SolarflareFeedEngineSettings.

Definition at line 42 of file SolarflareFeedEngine.h.

Member Typedef Documentation

◆ Base

Integral base type used to store or serialize values of Enum.

Definition at line 45 of file SolarflareFeedEngine.h.

Member Enumeration Documentation

◆ Enum

enum Enum

Available memory-allocation policies.

Enumerator
Native 0 

Uses regular heap memory aligned to the operating system's native page size.

This policy does not request HugeTLB pages.

PreferHuge  

Prefers HugeTLB pages and falls back to Native if allocation fails.

RequireHuge  

Requires HugeTLB pages.

Setting up the ef_vi multicast link fails if the required HugeTLB allocation cannot be satisfied; native allocation is not attempted.

Definition at line 48 of file SolarflareFeedEngine.h.