Large Memory Pool error on a computer with 60GB of RAM

Hi guys,

When trying to run my Unreal Project with Unreal 4.14.3 I’m having a Large Memory Pool error in a computer with 60GB of RAM.

The error seems to be something related to Large Memory, as you can see below:

Signal 11 caught.
Malloc Size=131076 LargeMemoryPoolOffset=131092 
CommonLinuxCrashHandler: Signal=11
Malloc Size=65535 LargeMemoryPoolOffset=196655 
[2017.11.08-21.50.37:667][182]LogCrashTracker: 
[2017.11.08-21.50.37:668][182]LogLinux: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000000000000002
[2017.11.08-21.50.37:668][182]LogLinux: Fatal error!

In order to solve, I have tried the solution proposed HERE, adding r.Streaming.PoolSize=6000 to ConsoleVariables.ini, opened Unreal again but I had the same error.


EDIT: what I’m trying to do is integrate ROS with Unreal. For that, I’m using parts of the code of the talker.cpp.

The error comes when I call

ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter", 1000);

on line 73 of talker.cpp, as you can see on the full trace (as asked on the answers):

Signal 11 caught.
Malloc Size=131076 LargeMemoryPoolOffset=131092 
CommonLinuxCrashHandler: Signal=11
Malloc Size=65535 LargeMemoryPoolOffset=196655 
[2017.11.08-21.50.37:667][182]LogCrashTracker: 


[2017.11.08-21.50.37:668][182]LogLinux: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000000000000002

[2017.11.08-21.50.37:668][182]LogLinux: Fatal error!

[Callstack]  00  0x00007f5690c0577f  FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long*, unsigned int, void*)
[Callstack]  01  0x00007f5690ade0f5  FGenericPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*)
[Callstack]  02  0x00007f5690be9481  FLinuxCrashContext::CaptureStackTrace()
[Callstack]  03  0x00007f5685c5b5b0  CommonLinuxCrashHandler(FGenericCrashContext const&)
[Callstack]  04  0x00007f5690bee96d  PlatformCrashHandler(int, siginfo_t*, void*)
[Callstack]  05  0x00007f56919af390  /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7f56919af390]
[Callstack]  06  0x00007f5690b81a4f  FMallocBinned::Private::FreeInternal(FMallocBinned&, void*)
[Callstack]  07  0x00007f55d65a4186  /home/ubuntu/unreal_ws/ERS414/Binaries/Linux/libUE4Editor-ERS414-2055.so(+0xe186) [0x7f55d65a4186]
[Callstack]  08  0x00007f55d65a5a91  ros::AdvertiseOptions::~AdvertiseOptions()
[Callstack]  09  0x00007f55d65a4d22  ros::Publisher ros::NodeHandle::advertise<std_msgs::String_<std::allocator<void> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, bool)
[Callstack]  10  0x00007f55d65a449c  AROSActor::BeginPlay()
[Callstack]  11  0x00007f568d7dec69  AWorldSettings::NotifyBeginPlay()
[Callstack]  12  0x00007f568cbb8fac  AGameStateBase::HandleBeginPlay()
[Callstack]  13  0x00007f568d7c8d89  UWorld::BeginPlay()
[Callstack]  14  0x00007f568cb7c308  UGameInstance::StartPIEGameInstance(ULocalPlayer*, bool, bool, bool)
[Callstack]  15  0x00007f56877a77bc  UEditorEngine::CreatePIEGameInstance(int, bool, bool, bool, bool, float)
[Callstack]  16  0x00007f568779fa27  UEditorEngine::PlayInEditor(UWorld*, bool)
[Callstack]  17  0x00007f568778fa28  UEditorEngine::StartQueuedPlayMapRequest()
[Callstack]  18  0x00007f568718a3a3  UEditorEngine::Tick(float, bool)
[Callstack]  19  0x00007f5687afa759  UUnrealEdEngine::Tick(float, bool)
[Callstack]  20  0x0000000000423582  FEngineLoop::Tick() [Runtime/Core/Public/Stats/Stats2.h, line 1673]
[Callstack]  21  0x000000000042ac03  GuardedMain(wchar_t const*) [/home/ubuntu/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp, line 48]
[Callstack]  22  0x00007f5685c5c457  CommonLinuxMain(int, char**, int (*)(wchar_t const*))
[Callstack]  23  0x00007f5684a39830  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7f5684a39830]
[Callstack]  24  0x00000000004156c9  /home/ubuntu/UnrealEngine/Engine/Binaries/Linux/UE4Editor(_start+0x29) [0x4156c9]

[2017.11.08-21.50.37:677][182]LogExit: Executing StaticShutdownAfterError
Malloc Size=53745 LargeMemoryPoolOffset=250417 

Do you know can I solve this problem?

FYI, I’m running the project on a computer with 36 vCPUs and 60GB of RAM.

.

1 Like

That “Malloc Size” message is unrelated, that is something that crash malloc (a special instance of malloc that the crash handler switches to) prints when starting to handle crash (“Signal 11 caught” is the moment when the crash was intercepted). The real cause of the crash is in the callstack that follows “Fatal error” message that you didn’t include here (was it cut?)

Hi ,

I’m writing as an answer because is to big too post it as a comment.

What I’m trying to do is integrate ROS in Unreal.

For that, first I’m trying to create a ROS Publisher using some parts of the code of the talker.cpp. I’m using just parts of the code to make it work with Unreal.

The problem comes when I try n.advertise<std_msgs::String>("chatter", 1000); (line 73 of talker.cpp) as you can see of the trace:

Signal 11 caught.
Malloc Size=131076 LargeMemoryPoolOffset=131092 
CommonLinuxCrashHandler: Signal=11
Malloc Size=65535 LargeMemoryPoolOffset=196655 
[2017.11.08-21.50.37:667][182]LogCrashTracker: 


[2017.11.08-21.50.37:668][182]LogLinux: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to read memory at address 0x0000000000000002

[2017.11.08-21.50.37:668][182]LogLinux: Fatal error!

[Callstack]  00  0x00007f5690c0577f  FLinuxPlatformStackWalk::CaptureStackBackTrace(unsigned long long*, unsigned int, void*)
[Callstack]  01  0x00007f5690ade0f5  FGenericPlatformStackWalk::StackWalkAndDump(char*, unsigned long, int, void*)
[Callstack]  02  0x00007f5690be9481  FLinuxCrashContext::CaptureStackTrace()
[Callstack]  03  0x00007f5685c5b5b0  CommonLinuxCrashHandler(FGenericCrashContext const&)
[Callstack]  04  0x00007f5690bee96d  PlatformCrashHandler(int, siginfo_t*, void*)
[Callstack]  05  0x00007f56919af390  /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7f56919af390]
[Callstack]  06  0x00007f5690b81a4f  FMallocBinned::Private::FreeInternal(FMallocBinned&, void*)
[Callstack]  07  0x00007f55d65a4186  /home/ubuntu/unreal_ws/ERS414/Binaries/Linux/libUE4Editor-ERS414-2055.so(+0xe186) [0x7f55d65a4186]
[Callstack]  08  0x00007f55d65a5a91  ros::AdvertiseOptions::~AdvertiseOptions()
[Callstack]  09  0x00007f55d65a4d22  ros::Publisher ros::NodeHandle::advertise<std_msgs::String_<std::allocator<void> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, bool)
[Callstack]  10  0x00007f55d65a449c  AROSActor::BeginPlay()
[Callstack]  11  0x00007f568d7dec69  AWorldSettings::NotifyBeginPlay()
[Callstack]  12  0x00007f568cbb8fac  AGameStateBase::HandleBeginPlay()
[Callstack]  13  0x00007f568d7c8d89  UWorld::BeginPlay()
[Callstack]  14  0x00007f568cb7c308  UGameInstance::StartPIEGameInstance(ULocalPlayer*, bool, bool, bool)
[Callstack]  15  0x00007f56877a77bc  UEditorEngine::CreatePIEGameInstance(int, bool, bool, bool, bool, float)
[Callstack]  16  0x00007f568779fa27  UEditorEngine::PlayInEditor(UWorld*, bool)
[Callstack]  17  0x00007f568778fa28  UEditorEngine::StartQueuedPlayMapRequest()
[Callstack]  18  0x00007f568718a3a3  UEditorEngine::Tick(float, bool)
[Callstack]  19  0x00007f5687afa759  UUnrealEdEngine::Tick(float, bool)
[Callstack]  20  0x0000000000423582  FEngineLoop::Tick() [Runtime/Core/Public/Stats/Stats2.h, line 1673]
[Callstack]  21  0x000000000042ac03  GuardedMain(wchar_t const*) [/home/ubuntu/UnrealEngine/Engine/Source/Runtime/Launch/Private/Launch.cpp, line 48]
[Callstack]  22  0x00007f5685c5c457  CommonLinuxMain(int, char**, int (*)(wchar_t const*))
[Callstack]  23  0x00007f5684a39830  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7f5684a39830]
[Callstack]  24  0x00000000004156c9  /home/ubuntu/UnrealEngine/Engine/Binaries/Linux/UE4Editor(_start+0x29) [0x4156c9]

[2017.11.08-21.50.37:677][182]LogExit: Executing StaticShutdownAfterError
Malloc Size=53745 LargeMemoryPoolOffset=250417

Hi , I’ve modified the question and added the “full” trace.

Please remove (if you haven’t already) linker script in LinuxToolChain.cs (comment out lines from 1166 to 1224), rebuild everything and retry.

This problem doesn’t happen with Unreal 4.17.2

I’m using 4.17.2 now to see if things go better.

4.16.3 and up have the belowmentioned linker script (see my other comment from Nov 10) removed, so yeah, it shouldn’t.