机器环境:
内存:128G
显卡:RTX-4080
崩溃堆栈:
2025.08.25-14.30.32:790][ 41]LogThreadingWindows: Error: Runnable thread Background Worker #12 crashed.
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: === Critical error: ===
[2025.08.25-14.30.32:790][ 41]LogWindows: Error:
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: Fatal error!
[2025.08.25-14.30.32:790][ 41]LogWindows: Error:
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x000002432b1ea530
[2025.08.25-14.30.32:790][ 41]LogWindows: Error:
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6db744445 Game-Win64-Shipping!Nanite::FStreamingManager::AddRequest() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Engine\Private\Rendering\NaniteStreamingManager.cpp:2879]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6db742abe Game-Win64-Shipping!Nanite::FStreamingManager::AddParentNewRequestsRecursive() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Engine\Private\Rendering\NaniteStreamingManager.cpp:2991]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6db744f93 Game-Win64-Shipping!Nanite::FStreamingManager::AsyncUpdate() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Engine\Private\Rendering\NaniteStreamingManager.cpp:3253]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6db74ceb2 Game-Win64-Shipping!TGraphTask<Nanite::FStreamingUpdateTask>::ExecuteTask() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Public\Async\TaskGraphInterfaces.h:713]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d8457751 Game-Win64-Shipping!UE::Tasks::Private::FTaskBase::TryExecuteTask() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Public\Tasks\TaskPrivate.h:530]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d8447f3f Game-Win64-Shipping!LowLevelTasks::TTaskDelegate<LowLevelTasks::FTask * __cdecl(bool),48>::TTaskDelegateImpl<`LowLevelTasks::FTask::Init<`UE::Tasks::Private::FTaskBase::Init’::`2’::<lambda_1> >‘::`5’::<lambda_1>,0>::CallAndMove() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Public\Async\Fundamental\TaskDelegate.h:171]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d844c17e Game-Win64-Shipping!LowLevelTasks::FTask::ExecuteTask() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Public\Async\Fundamental\Task.h:627]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d84597cb Game-Win64-Shipping!LowLevelTasks::FScheduler::WorkerLoop() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Private\Async\Fundamental\Scheduler.cpp:724]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d844465a Game-Win64-Shipping!`LowLevelTasks::FScheduler::CreateWorker’::`2’::<lambda_1>::operator()() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Private\Async\Fundamental\Scheduler.cpp:188]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d84e4584 Game-Win64-Shipping!FThreadImpl::Run() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Private\HAL\Thread.cpp:68]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d8661b07 Game-Win64-Shipping!FRunnableThreadWin::Run() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:159]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ff6d86618a9 Game-Win64-Shipping!FRunnableThreadWin::GuardedRun() [E:\Devops\XXTech\XXEngine560\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:79]
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: [Callstack] 0x00007ffd743ce8d7 KERNEL32.DLL!UnknownFunction
[2025.08.25-14.30.32:790][ 41]LogWindows: Error:
[2025.08.25-14.30.32:790][ 41]LogWindows: Error: Crash in runnable thread Background Worker #12
<br/>
崩溃描述:
1.低概率复现,多次进场景才出一次
2. 崩溃时没什么特别的行为,就纯跑场景
3. 没改动引擎源码
4.Nanite部分CVar有调整:
r.Nanite.MaxPixelsPerEdge=2
r.Nanite.Streaming.StreamingPoolSize=512
r.Nanite.Tessellation=1
5. 编辑器(WITH_EDITOR)情况下没复现过,都是打包版本出现(Dev, Test, Shipping 均有复现)
<br/>
崩溃部分代码:
void FStreamingManager::AddParentNewRequestsRecursive(const FResources& Resources, uint32 RuntimeResourceID, uint32 PageIndex, uint32 VirtualPageRangeStart, uint32 Priority)
{
checkSlow(Priority < MAX_uint32);
const uint32 NextPriority = Priority + 1u;
<br/>
const FPageStreamingState& PageStreamingState = Resources.PageStreamingStates[PageIndex];
for (uint32 i = 0; i < PageStreamingState.DependenciesNum; i++)
{
const uint32 DependencyPageIndex \= Resources.PageDependencies\[PageStreamingState.DependenciesStart \+ i];
if (!Resources.IsRootPage(DependencyPageIndex))
{
if (AddRequest(RuntimeResourceID, DependencyPageIndex, VirtualPageRangeStart \+ DependencyPageIndex, NextPriority))
{
AddParentNewRequestsRecursive(Resources, RuntimeResourceID, DependencyPageIndex, VirtualPageRangeStart, NextPriority);
}
}
}
}
<br/>
看dmp 文件,DependencyPageIndex 这个变量都比较大,3161566976,还有几次崩溃都是比较异常的值
<br/>
想问下Epic有没有碰到过类似的崩溃堆栈,以及我们这边该如何进一步定位这个问题。
<br/>
<br/>
<br/>