Navigation
Unreal Engine C++ API Reference > Runtime > Core > HAL
Inheritance Hierarchy
- FUseSystemMallocForNew
- FExec
- FMalloc
- FMallocBinned2
References
Module | Core |
Header | /Engine/Source/Runtime/Core/Public/HAL/MallocBinned2.h |
Include | #include "HAL/MallocBinned2.h" |
Syntax
class FMallocBinned2 : public FMalloc
Remarks
Optimized virtual memory allocator.
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
uint32 | BoundSizeToPoolIndex
(
SIZE_T Size |
|
![]() ![]() |
void | CanaryFail
(
const FFreeBlock* Block |
|
![]() ![]() |
void | CanaryTest
(
const FFreeBlock* Block |
|
![]() |
void | ||
![]() |
void | FreeExternal
(
void* Ptr |
|
![]() |
void | FreeInline
(
void* Ptr |
|
![]() |
bool | GetAllocationSizeExternal
(
void* Ptr, |
|
![]() ![]() |
int64 | ||
![]() |
void * | MallocExternalLarge
(
SIZE_T Size, |
|
![]() |
void * | MallocExternalSmall
(
SIZE_T Size, |
|
![]() |
void * | MallocInline
(
SIZE_T Size, |
|
![]() |
void * | MallocSelect
(
SIZE_T Size, |
|
![]() |
uint32 | PoolIndexToBlockSize
(
uint32 PoolIndex |
|
![]() |
void * | ReallocExternal
(
void* Ptr, |
|
![]() |
void * | ReallocInline
(
void* Ptr, |
|
![]() ![]() |
bool | UseSmallAlloc
(
SIZE_T Size, |
Overridden from FMalloc
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | Clears the TLS caches on the current thread and disables any future caching. | |
![]() ![]() |
void | DumpAllocatorStats
(
FOutputDevice& Ar |
Dumps current allocator stats to the log. |
![]() ![]() |
void | Free
(
void* Original |
Free |
![]() ![]() |
bool | GetAllocationSize
(
void* Original, |
If possible determine the size of the memory allocated at the given address |
![]() ![]() |
void | GetAllocatorStats
(
FGenericMemoryStats& out_Stats |
Writes allocator stats from the last update into the specified destination. |
![]() ![]() |
const TCHAR * | Gets descriptive name for logging purposes. | |
![]() ![]() ![]() |
bool | Returns if the allocator is guaranteed to be thread-safe and therefore doesn't need a unnecessary thread-safety wrapper around it. | |
![]() ![]() |
void * | Malloc
(
SIZE_T Count, |
Malloc |
![]() ![]() |
void | Notifies the malloc implementation that initialization of all allocators in GMalloc is complete, so it's safe to initialize any extra features that require "regular" allocations | |
![]() ![]() |
void | OnPostFork () |
Notifies the malloc implementation that the process has forked so we can try and avoid dirtying pre-fork pages. |
![]() ![]() |
void | OnPreFork () |
Notifies the malloc implementation that the process is about to fork. |
![]() ![]() |
SIZE_T | QuantizeSize
(
SIZE_T Count, |
For some allocators this will return the actual size that should be requested to eliminate internal fragmentation. |
![]() ![]() |
void * | Realloc
(
void* Original, |
Realloc |
![]() ![]() |
void | Set up TLS caches on the current thread. These are the threads that we can trim. | |
![]() ![]() |
void | Trim
(
bool bTrimThreadCaches |
Releases as much memory as possible. Must be called from the main thread. |
![]() ![]() |
void | UpdateStats () |
Called once per frame, gathers and sets all memory allocator statistics into the corresponding stats. |
![]() ![]() |
bool | ValidateHeap () |
Validates the allocator's heap |
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FPoolInfo | ||
![]() |
PoolHashBucket | Hash table struct for retrieving allocation book keeping information | |
![]() |
Private |
Constants
Name | Description |
---|---|
Binned2TlsSlot | |
CurrentCanary | |
MallocBinned2 | |
MemSizeToIndex | Mapping of sizes to small table indices. |
OsAllocationGranularity | |
PageSize | |
SmallBlockSizesReversed |