Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
MallocBinned2.h File Reference
+ Include dependency graph for MallocBinned2.h:

Go to the source code of this file.

Classes

class  FMallocBinned2
 
struct  FMallocBinned2::FFreeBlock
 
struct  FMallocBinned2::FPoolList
 
struct  FMallocBinned2::FPoolTable
 
struct  FMallocBinned2::FPtrToPoolMapping
 
struct  FMallocBinned2::FBundleNode
 
struct  FMallocBinned2::FBundle
 
struct  FMallocBinned2::FFreeBlockList
 
struct  FMallocBinned2::FPerThreadFreeBlockLists
 

Macros

#define BINNED2_MAX_CACHED_OS_FREES   (64)
 
#define BINNED2_MAX_CACHED_OS_FREES_BYTE_LIMIT   (16*1024*1024)
 
#define BINNED2_LARGE_ALLOC   65536
 
#define BINNED2_MINIMUM_ALIGNMENT_SHIFT   4
 
#define BINNED2_MINIMUM_ALIGNMENT   16
 
#define BINNED2_MAX_SMALL_POOL_SIZE   (32768-16)
 
#define BINNED2_SMALL_POOL_COUNT   45
 
#define DEFAULT_GMallocBinned2PerThreadCaches   1
 
#define DEFAULT_GMallocBinned2LockFreeCaches   0
 
#define DEFAULT_GMallocBinned2BundleCount   64
 
#define DEFAULT_GMallocBinned2AllocExtra   32
 
#define BINNED2_MAX_GMallocBinned2MaxBundlesBeforeRecycle   8
 
#define DEFAULT_GMallocBinned2MoveOSFreesOffTimeCriticalThreads   1
 
#define DEFAULT_GMallocBinned2BundleSize   BINNED2_LARGE_ALLOC
 
#define BINNED2_BOOKKEEPING_AT_THE_END_OF_LARGEBLOCK   0
 
#define BINNED2_FORK_SUPPORT   (UE_SERVER && (PLATFORM_UNIX || DEFAULT_SERVER_FAKE_FORKS))
 
#define BINNED2_ALLOW_RUNTIME_TWEAKING   0
 
#define GMallocBinned2PerThreadCaches   DEFAULT_GMallocBinned2PerThreadCaches
 
#define GMallocBinned2BundleSize   DEFAULT_GMallocBinned2BundleSize
 
#define GMallocBinned2BundleCount   DEFAULT_GMallocBinned2BundleCount
 
#define GMallocBinned2MaxBundlesBeforeRecycle   BINNED2_MAX_GMallocBinned2MaxBundlesBeforeRecycle
 
#define GMallocBinned2AllocExtra   DEFAULT_GMallocBinned2AllocExtra
 
#define GMallocBinned2MoveOSFreesOffTimeCriticalThreads   DEFAULT_GMallocBinned2MoveOSFreesOffTimeCriticalThreads
 
#define BINNED2_ALLOCATOR_STATS   1
 
#define BINNED2_ALLOCATOR_STATS_VALIDATION   (BINNED2_ALLOCATOR_STATS && 0)
 
#define BINNED2_INLINE   (1)
 

Enumerations

enum class  EBlockCanary : uint8 { Zero = 0x0 , Value = 0xE3 , Zero = 0x0 , Value = 0xe3 }
 

Variables

TAtomic< int64AllocatedSmallPoolMemory
 
TAtomic< int64AllocatedOSSmallPoolMemory
 
TAtomic< int64AllocatedLargePoolMemory
 
TAtomic< int64AllocatedLargePoolMemoryWAlignment
 

Macro Definition Documentation

◆ BINNED2_ALLOCATOR_STATS

#define BINNED2_ALLOCATOR_STATS   1

Definition at line 89 of file MallocBinned2.h.

◆ BINNED2_ALLOCATOR_STATS_VALIDATION

#define BINNED2_ALLOCATOR_STATS_VALIDATION   (BINNED2_ALLOCATOR_STATS && 0)

Definition at line 94 of file MallocBinned2.h.

◆ BINNED2_ALLOW_RUNTIME_TWEAKING

#define BINNED2_ALLOW_RUNTIME_TWEAKING   0

Definition at line 66 of file MallocBinned2.h.

◆ BINNED2_BOOKKEEPING_AT_THE_END_OF_LARGEBLOCK

#define BINNED2_BOOKKEEPING_AT_THE_END_OF_LARGEBLOCK   0

Definition at line 57 of file MallocBinned2.h.

◆ BINNED2_FORK_SUPPORT

#define BINNED2_FORK_SUPPORT   (UE_SERVER && (PLATFORM_UNIX || DEFAULT_SERVER_FAKE_FORKS))

Definition at line 62 of file MallocBinned2.h.

◆ BINNED2_INLINE

#define BINNED2_INLINE   (1)

Definition at line 810 of file MallocBinned2.h.

◆ BINNED2_LARGE_ALLOC

#define BINNED2_LARGE_ALLOC   65536

Definition at line 30 of file MallocBinned2.h.

◆ BINNED2_MAX_CACHED_OS_FREES

#define BINNED2_MAX_CACHED_OS_FREES   (64)

Definition at line 23 of file MallocBinned2.h.

◆ BINNED2_MAX_CACHED_OS_FREES_BYTE_LIMIT

#define BINNED2_MAX_CACHED_OS_FREES_BYTE_LIMIT   (16*1024*1024)

Definition at line 27 of file MallocBinned2.h.

◆ BINNED2_MAX_GMallocBinned2MaxBundlesBeforeRecycle

#define BINNED2_MAX_GMallocBinned2MaxBundlesBeforeRecycle   8

Definition at line 41 of file MallocBinned2.h.

◆ BINNED2_MAX_SMALL_POOL_SIZE

#define BINNED2_MAX_SMALL_POOL_SIZE   (32768-16)

Definition at line 33 of file MallocBinned2.h.

◆ BINNED2_MINIMUM_ALIGNMENT

#define BINNED2_MINIMUM_ALIGNMENT   16

Definition at line 32 of file MallocBinned2.h.

◆ BINNED2_MINIMUM_ALIGNMENT_SHIFT

#define BINNED2_MINIMUM_ALIGNMENT_SHIFT   4

Definition at line 31 of file MallocBinned2.h.

◆ BINNED2_SMALL_POOL_COUNT

#define BINNED2_SMALL_POOL_COUNT   45

Definition at line 34 of file MallocBinned2.h.

◆ DEFAULT_GMallocBinned2AllocExtra

#define DEFAULT_GMallocBinned2AllocExtra   32

Definition at line 40 of file MallocBinned2.h.

◆ DEFAULT_GMallocBinned2BundleCount

#define DEFAULT_GMallocBinned2BundleCount   64

Definition at line 39 of file MallocBinned2.h.

◆ DEFAULT_GMallocBinned2BundleSize

#define DEFAULT_GMallocBinned2BundleSize   BINNED2_LARGE_ALLOC

Definition at line 50 of file MallocBinned2.h.

◆ DEFAULT_GMallocBinned2LockFreeCaches

#define DEFAULT_GMallocBinned2LockFreeCaches   0

Definition at line 38 of file MallocBinned2.h.

◆ DEFAULT_GMallocBinned2MoveOSFreesOffTimeCriticalThreads

#define DEFAULT_GMallocBinned2MoveOSFreesOffTimeCriticalThreads   1

Definition at line 42 of file MallocBinned2.h.

◆ DEFAULT_GMallocBinned2PerThreadCaches

#define DEFAULT_GMallocBinned2PerThreadCaches   1

Definition at line 37 of file MallocBinned2.h.

◆ GMallocBinned2AllocExtra

#define GMallocBinned2AllocExtra   DEFAULT_GMallocBinned2AllocExtra

Definition at line 80 of file MallocBinned2.h.

◆ GMallocBinned2BundleCount

#define GMallocBinned2BundleCount   DEFAULT_GMallocBinned2BundleCount

Definition at line 78 of file MallocBinned2.h.

◆ GMallocBinned2BundleSize

#define GMallocBinned2BundleSize   DEFAULT_GMallocBinned2BundleSize

Definition at line 77 of file MallocBinned2.h.

◆ GMallocBinned2MaxBundlesBeforeRecycle

#define GMallocBinned2MaxBundlesBeforeRecycle   BINNED2_MAX_GMallocBinned2MaxBundlesBeforeRecycle

Definition at line 79 of file MallocBinned2.h.

◆ GMallocBinned2MoveOSFreesOffTimeCriticalThreads

#define GMallocBinned2MoveOSFreesOffTimeCriticalThreads   DEFAULT_GMallocBinned2MoveOSFreesOffTimeCriticalThreads

Definition at line 81 of file MallocBinned2.h.

◆ GMallocBinned2PerThreadCaches

#define GMallocBinned2PerThreadCaches   DEFAULT_GMallocBinned2PerThreadCaches

Definition at line 76 of file MallocBinned2.h.

Enumeration Type Documentation

◆ EBlockCanary

Enumerator
Zero 
Value 
Zero 
Value 

Definition at line 115 of file MallocBinned2.h.

Variable Documentation

◆ AllocatedLargePoolMemory

TAtomic<int64> AllocatedLargePoolMemory
extern

◆ AllocatedLargePoolMemoryWAlignment

TAtomic<int64> AllocatedLargePoolMemoryWAlignment
extern

◆ AllocatedOSSmallPoolMemory

TAtomic<int64> AllocatedOSSmallPoolMemory
extern

◆ AllocatedSmallPoolMemory

TAtomic<int64> AllocatedSmallPoolMemory
extern