| FGenericPlatformMemory
|
Module |
|
Header |
/Engine/Source/Runtime/Core/Public/GenericPlatform/GenericPlatformMemory.h |
Include |
#include "GenericPlatform/GenericPlatformMemory.h" |
struct FGenericPlatformMemory
Generic implementation for most platforms, these tend to be unused and unimplemented.
Name | Description | ||
---|---|---|---|
|
struct |
attribute ( |
Assume it is either clang or something that supports the clang attributes |
|
FMalloc *... |
BaseAllocator() |
|
|
void * |
BigBlockMemcpy |
Memcpy optimized for big blocks. |
|
void * |
BinnedAllocFromOS ( |
Allocates pages from the OS. |
|
BinnedFreeToOS |
Returns pages allocated by BinnedAllocFromOS to the OS. |
|
|
BinnedPlatformHasMemoryPoolForThisSize ( |
Some platforms may pool allocations of this size to reduce OS calls. |
|
|
DumpPlatformAndAllocatorStats ( |
Dumps basic platform memory statistics and allocator specific statistics into the specified output device. |
|
|
DumpStats ( |
Dumps basic platform memory statistics into the specified output device. |
|
|
GetBackMemoryPoolSize() |
||
|
const FPlatf... |
GetConstants() |
|
|
GetExtraDevelopmentMemorySize() |
Returns >0 if debug memory has been assigned to the title for general use. |
|
|
GetLLMAllocFunctions |
This function sets AllocFunction and FreeFunction and returns true, or just returns false. |
|
|
EPlatformMem... |
GetMemorySizeBucket() |
Return which "high level", per platform, memory bucket we are in |
|
GetMemoryUsedFast() |
||
|
GetPhysicalGBRam() |
||
|
FPlatformMem... |
GetStats() |
|
|
GetStatsForMallocProfiler ( |
Writes all platform specific current memory statistics in the format usable by the malloc profiler. |
|
|
HasForkPageProtectorEnabled() |
Returns true if Protecting the parent processes pages has been enabled Only supported on platforms that support forking |
|
|
Init() |
Initializes platform memory specific constants. |
|
|
InternalUpdateStats ( |
Updates platform specific stats. |
|
|
IsExtraDevelopmentMemoryAvailable() |
Returns true if debug memory has been assigned to the title for general use. |
|
|
IsNanoMallocAvailable() |
Nano Malloc is Apple's tiny block allocator. Does the Nano malloc zone exist? |
|
|
FSharedMemor... |
MapNamedSharedMemoryRegion |
Maps a named shared memory region into process address space (creates or opens it) |
|
Memcmp |
||
|
void * |
Memcpy |
|
|
void * |
Memmove |
Copies count bytes of characters from Src to Dest. |
|
void * |
Memset |
|
|
Memswap |
||
|
void * |
Memzero |
|
|
NanoMallocInit() |
Performs initial setup for Nano malloc. This is a noop on non-apple platforms |
|
|
OnLowLevelMemory_Alloc |
Called for all default tracker LLM allocations and frees, when LLM is enabled. |
|
|
OnLowLevelMemory_Free |
||
|
OnOutOfMemory |
||
|
PageProtect |
Changes the protection on a region of committed pages in the virtual address space. |
|
|
PtrIsFromNanoMalloc ( |
Was this pointer allocated by in the Nano Malloc Zone? Currently only Apple platforms implement this to detect small block allocations. |
|
|
PtrIsOSMalloc ( |
Was this pointer allocated by the OS malloc? Currently only Apple platforms implement this to detect small block allocations. |
|
|
T |
ReadUnaligned ( |
Loads a simple POD type from unaligned memory. |
|
RegisterCustomLLMTags() |
Called once at LLM initialization time to let the platform add any custom tags |
|
|
SetupMemoryPools() |
Initializes the memory pools, should be called by the init function. |
|
|
void * |
StreamingMemcpy |
On some platforms memcpy optimized for big blocks that avoid L2 cache pollution are available |
|
SupportsFastVRAMMemory() |
Gets whether this platform supports Fast VRAM memory Ie, whether TexCreate_FastVRAM flags actually mean something or not |
|
|
UnmapNamedSharedMemoryRegion ( |
Unmaps a name shared memory region |
|
|
UpdateCustomLLMTags() |
Called once per frame when LLM is collating the data for the current frame. |
|
|
WriteUnaligned ( |
Stores a simple POD type to unaligned memory. |
Name |
Description |
|
---|---|---|
|
FBasicVirtualMemoryBlock |
|
|
FSharedMemoryRegion |
Generic representation of a shared memory region |
Name |
Description |
|
---|---|---|
|
EMemoryAllocatorToUse |
Which allocator is being used |
|
EMemoryCounterRegion |
Various memory regions that can be used with memory stats. |
|
ESharedMemoryAccess |
Flags used for shared memory creation/open |
Name |
Description |
---|---|
AllocatorToUse |
Current allocator |
BackupOOMMemoryPool |
Preallocated buffer to delete on out of memory. Used by OOM handling and crash reporting. |
BackupOOMMemoryPoolSize |
Size of BackupOOMMemoryPool in bytes. |
bIsOOM |
Set to true if we encounters out of memory. |
OOMAllocationAlignment |
Set to alignment of allocation that triggered out of memory, zero otherwise. |
OOMAllocationSize |
Set to size of allocation that triggered out of memory, zero otherwise. |