线上项目高频出现 “GameThread timed out waiting for RenderThread after xx secs”。
从Dump来看,都是GPU不响应了,也有可能是GPU Hung/Crash了。
其中有一些通过log观察到是失去焦点或者从其他应用切回来获得焦点的时候没有正常恢复渲染从而导致了卡死。
<br/>
想请问官方有没有遇到类似的反馈。
线上项目高频出现 “GameThread timed out waiting for RenderThread after xx secs”。
从Dump来看,都是GPU不响应了,也有可能是GPU Hung/Crash了。
其中有一些通过log观察到是失去焦点或者从其他应用切回来获得焦点的时候没有正常恢复渲染从而导致了卡死。
<br/>
想请问官方有没有遇到类似的反馈。
抱歉,根据目前的一些信息,暂时不确定具体问题是什么,我也没有看到内部有类似的问题,不知道你们能否想办法重现问题,然后得到当时卡死的所有线程堆栈?也许新版本有修复,但是我目前没法定位问题是哪里,如果有堆栈信息,也许我能更容易找到。
遇到过显存吃紧的时候卡在SubmissionThread导致“GameThread timed out waiting for RenderThread after 120.0 secs”, SubmissionThread在等ResidencyManager完成MakeResident操作,不知道是不是相同的case。
CL 44248799可以在Payload执行过长时打印下breadcrumb,可以帮助排除下GPU方面的原因。
感谢,上述提到的改动是https://github.com/EpicGames/UnrealEngine/commit/f4ce60ba456785379d8280a5c7af3351137cba84
这种现存不足的情况,开发的同学的确有意识到,并在想办法解决,但是属于长期规划,设计的系统比较多,所以不是简单的改动。
据我所以包括VT,GPUScene,Nanite都已经尽量使用ReservedResource来减少申请连续的大块gpu内存,从而减少gpu压力。