Navigation
API > API/Runtime > API/Runtime/Core
| Name | FMallocBinnedGPU |
| Type | class |
| Header File | /Engine/Source/Runtime/Core/Public/HAL/MallocBinnedGPU.h |
| Include Path | #include "HAL/MallocBinnedGPU.h" |
Syntax
class FMallocBinnedGPU : public FMalloc
Inheritance Hierarchy
- FExec → FMalloc → FMallocBinnedGPU
- FUseSystemMallocForNew → FMalloc → FMallocBinnedGPU
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FMallocBinnedGPU() |
HAL/MallocBinnedGPU.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FMallocBinnedGPU() |
HAL/MallocBinnedGPU.h |
Structs
| Name | Remarks |
|---|---|
| FBundle | |
| FBundleNode | |
| FFreeBlock | |
| FFreeBlockList | |
| FGlobalRecycler | |
| FGPUMemoryBlockProxy | |
| FPerThreadFreeBlockLists | |
| FPoolInfoLarge | |
| FPoolInfoSmall | |
| FPoolTable | |
| FPtrToPoolMapping | |
| PoolHashBucket | Hash table struct for retrieving allocation book keeping information |
| Private |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ArenaParams | FArenaParams | HAL/MallocBinnedGPU.h | ||
| BinnedGPUAllocatedLargePoolMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUAllocatedLargePoolMemoryWAlignment | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUAllocatedOSSmallPoolMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUAllocatedSmallPoolMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUFreeBitsMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUHashMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUPoolInfoMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUTLSMemory | int64 | HAL/MallocBinnedGPU.h | ||
| BinnedGPUTlsSlot | uint32 | HAL/MallocBinnedGPU.h | ||
| ConsolidatedMemory | TAtomic< int64 > | HAL/MallocBinnedGPU.h | ||
| FreeBlockListsRegistrationMutex | UE::FPlatformRecursiveMutex | HAL/MallocBinnedGPU.h | ||
| GGlobalRecycler | FGlobalRecycler | HAL/MallocBinnedGPU.h | ||
| GPUProxyMemory | TAtomic< int64 > | HAL/MallocBinnedGPU.h | ||
| HashBucketFreeList | PoolHashBucket * | HAL/MallocBinnedGPU.h | ||
| HashBuckets | PoolHashBucket * | HAL/MallocBinnedGPU.h | ||
| HighestPoolBaseVMPtr | uint8 * | HAL/MallocBinnedGPU.h | ||
| MallocedPointers | TArray< void * > | HAL/MallocBinnedGPU.h | ||
| MemSizeToIndex | TArray< uint8 > | Mapping of sizes to small table indices. | HAL/MallocBinnedGPU.h | |
| Mutex | UE::FPlatformRecursiveMutex | HAL/MallocBinnedGPU.h | ||
| NumLargePoolsPerPage | uint64 | HAL/MallocBinnedGPU.h | ||
| PoolBaseVMBlock | FPlatformMemory::FPlatformVirtualMemoryBlock | HAL/MallocBinnedGPU.h | ||
| PoolBaseVMBlocks | TArray< FPlatformMemory::FPlatformVirtualMemoryBlock > | HAL/MallocBinnedGPU.h | ||
| PoolBaseVMPtr | TArray< uint8 * > | HAL/MallocBinnedGPU.h | ||
| PoolSearchDiv | uint64 | HAL/MallocBinnedGPU.h | ||
| PtrToPoolMapping | FPtrToPoolMapping | HAL/MallocBinnedGPU.h | ||
| RegisteredFreeBlockLists | TArray< FPerThreadFreeBlockLists * > | HAL/MallocBinnedGPU.h | ||
| SmallBlockSizesReversedShifted | TArray< uint16 > | HAL/MallocBinnedGPU.h | ||
| SmallPoolInfosPerPlatformPage | uint32 | HAL/MallocBinnedGPU.h | ||
| SmallPoolTables | TArray< FPoolTable > | Pool tables for different pool sizes. | HAL/MallocBinnedGPU.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
uint32 BoundSizeToPoolIndex
(
SIZE_T Size |
HAL/MallocBinnedGPU.h | ||
void Commit
(
uint32 InPoolIndex, |
HAL/MallocBinnedGPU.h | ||
void Decommit
(
uint32 InPoolIndex, |
HAL/MallocBinnedGPU.h | ||
void FlushCurrentThreadCache() |
HAL/MallocBinnedGPU.h | ||
void FreeExternal
(
void* Ptr |
HAL/MallocBinnedGPU.h | ||
bool GetAllocationSizeExternal
(
void* Ptr, |
HAL/MallocBinnedGPU.h | ||
UE::FPlatformRecursiveMutex & GetFreeBlockListsRegistrationMutex() |
HAL/MallocBinnedGPU.h | ||
FArenaParams & GetParams() |
HAL/MallocBinnedGPU.h | ||
TArray< FPerThreadFreeBlockLists * > & GetRegisteredFreeBlockLists() |
HAL/MallocBinnedGPU.h | ||
int64 GetTotalAllocatedSmallPoolMemory() |
HAL/MallocBinnedGPU.h | ||
void InitMallocBinned() |
HAL/MallocBinnedGPU.h | ||
void * MallocExternal
(
SIZE_T Size, |
HAL/MallocBinnedGPU.h | ||
uint32 PoolIndexToBlockSize
(
uint32 PoolIndex |
HAL/MallocBinnedGPU.h | ||
void RegisterThreadFreeBlockLists
(
FPerThreadFreeBlockLists* FreeBlockLists |
HAL/MallocBinnedGPU.h | ||
int64 UnregisterThreadFreeBlockLists
(
FPerThreadFreeBlockLists* FreeBlockLists |
HAL/MallocBinnedGPU.h |
Public Virtual
Overridden from FMalloc
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void ClearAndDisableTLSCachesOnCurrentThread() |
Clears the TLS caches on the current thread and disables any future caching. | HAL/MallocBinnedGPU.h | |
virtual void DumpAllocatorStats
(
FOutputDevice& Ar |
Dumps current allocator stats to the log. | HAL/MallocBinnedGPU.h | |
virtual void Free
(
void* Original |
Free | HAL/MallocBinnedGPU.h | |
virtual bool GetAllocationSize
(
void* Original, |
If possible determine the size of the memory allocated at the given address | HAL/MallocBinnedGPU.h | |
virtual void GetAllocatorStats
(
FGenericMemoryStats& out_Stats |
Writes allocator stats from the last update into the specified destination. | HAL/MallocBinnedGPU.h | |
virtual const TCHAR * GetDescriptiveName() |
Gets descriptive name for logging purposes. | HAL/MallocBinnedGPU.h | |
virtual bool IsInternallyThreadSafe() |
Returns if the allocator is guaranteed to be thread-safe and therefore doesn't need a unnecessary thread-safety wrapper around it. | HAL/MallocBinnedGPU.h | |
virtual void * Malloc
(
SIZE_T Count, |
Malloc | HAL/MallocBinnedGPU.h | |
virtual SIZE_T QuantizeSize
(
SIZE_T Count, |
For some allocators this will return the actual size that should be requested to eliminate internal fragmentation. | HAL/MallocBinnedGPU.h | |
virtual void * Realloc
(
void* Original, |
Realloc | HAL/MallocBinnedGPU.h | |
virtual void SetupTLSCachesOnCurrentThread() |
Set up TLS caches on the current thread. These are the threads that we can trim. | HAL/MallocBinnedGPU.h | |
virtual void Trim
(
bool bTrimThreadCaches |
Releases as much memory as possible. Must be called from the main thread. | HAL/MallocBinnedGPU.h | |
virtual bool ValidateHeap() |
Validates the allocator's heap | HAL/MallocBinnedGPU.h |