Lumen Hardware Ray Tracing Crash

재현 스텝은 따로 존재하지 않습니다

패키지 빌드에서 월드를 돌아다니면 발생합니다

재현 방법
언리얼 5.5 버전을 사용하다 5.6버전으로 마이그레이션 진행을 하였습니다

PIE에서는 발생하지 않던 루멘 하드웨어 레이트레이싱 크래시 이슈가 패키지 빌드에서 발생하였습니다

해당 크래시는 무작위 적으로 재현 되고 있습니다​

안녕하세요.

첨부 로그 기준 이 크래시는 DXGI_ERROR_DEVICE_HUNG 유형의 GPU 크래시로, 크래시 직전에 GPU 페이지 폴트와 이미 해제된 리소스에 대한 접근(Use-after-free) 정황이 확인됩니다. 조명 단계에서의 Compute 경로(Lumen 하드웨어 레이트레이싱 포함)와 얽히며 발생했을 가능성이 있습니다. 내부 테스트에서 UE 5.5 → 5.6 마이그레이션 후 빈 프로젝트(패키지) 로 확인했을 때는 동일 현상을 재현하긴 어려웠습니다.

아래 항목을 우선 확인해 주시면 도움이 될 것 같습니다.

  • 패키지를 하드웨어 레이트레이싱 비활성 상태로 시작한 뒤, 맵 로딩 완료 후 콘솔에서 r.Lumen.HardwareRayTracing 1을 적용해 재현성을 비교
  • 사용 중인 GPU 드라이버를 최신으로 업데이트한 뒤 동일 맵에서 다시 확인
  • 빈 UE 5.6 프로젝트에서 동일 현상이 나타나는지도 확인

추가로, 사용 GPU 모델,드라이버 버전, 재현 가능한 샘플 프로젝트를 첨부해 주시면 원인 파악에 큰 도움이 됩니다.

감사합니다.

안녕하세요.

정확한 원인 분석을 위해서는 Nsight Aftermath와 PIX를 함께 사용하는 것을 권장드립니다. 기본 사용법과 연결 방법은 PIX 가이드(https://dev.epicgames.com/community/learning/knowledge\-base/nzK3/using\-pix\-on\-windows\-with\-unreal\-engine)와 Nsight Aftermath 가이드(https://dev.epicgames.com/documentation/ko\-kr/unreal\-engine/nvidia\-nsight\-aftermath\-for\-gpu\-pipeline\-debugging\-in\-unreal\-engine)를 참고하시면 좋을 것 같습니다.

에디터는 디버깅 전용 옵션을 켠 상태로 실행하는 것을 권장드립니다. 실행 인자에 -gpucrashdebugging -rdgvalidation=1 -rdgimmediate -onethread -d3ddebug를 추가해 Aftermath를 활성화하고 RDG 유효성 검사를 켜며, 스케줄링을 단순화해 재현성을 높이고, 스레드 변동을 줄이며, D3D 디버그 레이어까지 활성화합니다. 참고로 -rdgimmediate는 디버깅 전용이므로 성능 비교에는 사용하지 않는 편이 안전합니다.

프로젝트의 ConsoleVariables.ini에는 다음을 추가하는 것을 권장드립니다.

r.DumpShaderDebugInfo=1, r.Shaders.Symbols=1, r.Shaders.ExtraData=1, r.ShaderDevelopmentMode=1, r.GPUCrashDebugging.Aftermath.DumpProcessWaitTime=999.0, r.GPUCrashDebugging.Aftermath.DumpStartWaitTime=99.0. 설정 후 반드시 RecompileShaders Global로 전체 셰이더를 리컴파일하여 <Project>/Saved/ShaderDebugInfo/PCD3D_SM6/… 경로에 디버그 아티팩트가 생성됐는지 확인이 필요합니다.

크래시가 발생하면 <Project>/Saved/Crashes/<타임스탬프>/ 폴더에 .nv-gpudmp가 생성됩니다. 환경에 따라 .nvdbg가 Saved/Logs에 따로 생성될 수 있으니, 분석 편의를 위해 .nvdbg를 .nv-gpudmp가 있는 크래시 폴더로 옮겨 두 파일을 같은 위치에 두는 것을 권장드립니다. 동시에 Saved/ShaderDebugInfo에 해당 시점의 심볼이 잘 생성됐는지도 확인도 필요합니다.

분석은 Nsight Graphics에서 .nv-gpudmp를 열고 Search Paths에 Engine/Engine/Shaders(Shader Source)와 <Project>/Saved/ShaderDebugInfo(Shader Binaries / Separate Debug Info)를 등록한 뒤 진행하면 됩니다. 필요 시 PIX는 -attachPix로 실행 후 UnrealEditor 프로세스에 Attach하여 문제 프레임을 캡처하면 원인 추적에 도움이 됩니다.

마지막으로, 프로젝트에 DLSS 플러그인이 활성화되어 있다면 이슈 연관성을 확인하기 위해 일시적으로 비활성화한 상태로 동일 시나리오를 테스트 해보시길 권장드립니다.

감사합니다.

안녕하세요 김기원님

문의주신 내용과 관련해서 aftermath dump와 실행 로그를 전달해주시면 확인해서 의견드리겠습니다.

보안이 우려되신다면, 저희 시스템에서 이 글을 비밀 글로 변경하는 것이 가능합니다.

필요하시면 말씀해주세요.

감사합니다.

이전에 덤프파일과 같이 올렸었는데 다시 업로드 하겠씁니다

안녕하세요.

올려주신 덤프에서 추가 정보가 더 필요해 요청드려요.​

​"분석은 Nsight Graphics에서 .nv-gpudmp를 열고 Search Paths에 Engine/Engine/Shaders(Shader Source)와 <Project>/Saved/ShaderDebugInfo(Shader Binaries / Separate Debug Info)를 등록한 뒤 진행하면 됩니다."

위 셋업을 마쳤다면 덤프에 더 구체적인 정보가 표시되어야 합니다.

ShaderDebugInfo 폴더는 크기가 너무 클 것으로 생각되니,

일차적으로 스크린샷을 통해 구체적인 정보를 주시거나,

문제를 일으키는 셰이더로 추정되는 대상에 대해서만 ShaderDebugInfo 내 폴더를 전달해주세요.

감사합니다.​

덤프 파일 올렸습니다

충돌 지점에 대한 ShaderDebugInfo, ShaderSymbols 정보 포함하였습니다

nv-gpu​dump를 확인해 보았으나 심볼 파일은 로드하였으나 Shader Location 정보를 확인할수없었습니다

2025.11.12 폴더에 스샷 첨부하였습니다​ 확인해 보시고 혹시 경로 설정에 문제가 있어서 확인 할 수 가 없는지 확인 부탁 드립니다

안녕하세요.

확인 후 답변드리겠습니다.

감사합니다.

안녕하세요.

첨부해주신 Nsight로 셰이더 코드를 확인이 불가능한 이유는 .nvdbg 파일의 누락과 Nsight에서 잘못된 경로 설정 문제 때문입니다.

아래 사항들을 확인하여 다른 문제가 없는지 확인해보시면 도움이 될 것 같습니다.

  1. 엔진의 ConsoleVariables.ini 세팅 [Image Removed]
  2. 에디터 실행 시 Aftermath가 정상적으로 적용되었는지 확인 및 셰이더 심볼 적용 확인 [Image Removed]
  3. 디버그 옵션 활성화 -nvaftermathall -nomaterialshaderddc -gpucrashdebugging(테스트를 위해 Standalone에서 의도적으로 TDR을 발생시켰습니다.) [Image Removed]
  4. RecompileShaders Global으로 셰이더 디버그 정보 생성 [Image Removed]
  5. 크래시 발생 후 .nvdbg 파일이 생성되었는지 확인 [Image Removed]
  6. Nsight Search Paths 수정 [Image Removed]
  7. 셰이더 소스가 정상적으로 보이는지 확인 [Image Removed]

추가로, HWRT를 비활성화한 상태에서도 동일한 문제가 재현되는지, DLSS를 끈 상태에서도 동일하게 발생하는지 확인해 보시면 원인 파악에 도움이 될 것 같습니다.

또한 첨부해 주신 로그에서 XeSS 등 해상도 관련 플러그인에서 에러가 발생하는 것을 확인했습니다. 프로젝트 내 경고와 에러 로그를 한 번 정리해서, 문제가 될 가능성이 있는 옵션이나 플러그인을 순차적으로 비활성화해 보시는 것도 도움이 될 것 같습니다.

감사합니다.

[mention removed]​

LumenHardwareRayTracingCommon.ush 에서 크래시 발생하는 것을 확인하였습니다

[Image Removed]

[Image Removed]​

안녕하세요.

첨부해 주신 Nsight Aftermath 캡처를 확인해 보면 현재 GPU 크래시는 HWRT 경로에서 실행되는 컴퓨트 셰이더 내부에서, 트라이앵글의 버텍스 데이터를 SourceBuffer.Load로 읽어오는 과정에서 MMU Page Fault가 발생하고 있는 것으로 보입니다.

해당 에러는 셰이더가 유효하지 않은 GPU 주소를 읽으려고 했다는 의미이기 때문에, 보통 레이트레이싱 지오메트리를 구성할 때 사용한 버텍스나 인덱스 버퍼의 크기, 스트라이드, 오프셋 정보가 잘못되었거나, 이미 해제되었거나 다른 용도로 재사용된 버퍼를 여전히 참조하고 있는 경우와 같은 데이터 혹은 바인딩 쪽 문제에서 주로 발생합니다.

HWRT를 비활성화하면 동일한 씬에서 크래시가 발생하지 않는다는 점으로 보아 HWRT 경로에서 문제가 되는 버텍스나 인덱스 버퍼의 원인이 되는 소스를 찾는 것이 좋을 것 같습니다.

우선, 프로젝트에서 커스텀 레이트레이싱 지오메트리나 커스텀 VertexFactory, Procedural Mesh, 또는 플러그인에서 생성하는 RayTracingGeometry 등을 사용하고 있다면, 우선적으로 해당 Actor나 컴포넌트를 모두 제거한 상태에서 동일한 크래시가 재현되는지 확인해 보시면 좋을 것 같습니다. 이후에 동일한 크래시가 발생한다면 씬에 배치된 오브젝트들을 순차적으로 제거하면서 테스트해서 크래시를 발생시키는 리소스를 찾으시면 좋을 것 같습니다.

그리고 문제를 발생하키는 오브젝트로 재현 가능한 샘플 프로젝트를 첨부해 주시면 원인 파악에 도움이 될 것 같습니다.

또한 5.7 버전에서 LumenHardwareRayTracingCommon.ush과 관련하여 안정성 개선 업데이트가 있는 것으로 확인됩니다. 5.7 버전에서도 동일하게 재현이 가능한지 확인해 보시면 좋을 것 같습니다.

감사합니다.

1. 패키지를 하드웨어 레이트레이싱 비활성 상태로 시작한 뒤, 맵 로딩 완료 후 콘솔에서 r.Lumen.HardwareRayTracing 1을 적용해 재현성을 비교

  • 위와 같이 플레이한 결과 크래시는 현상은 같았습니다

2. 사용 중인 GPU 드라이버를 최신으로 업데이트한 뒤 동일 맵에서 다시 확인

  • GPU 드라이버는 항상 최신이며 해당 현상은 다양한 사양의 PC에서 재현되고 있습니다

3. 빈 UE 5.6 프로젝트에서 동일 현상이 나타나는지도 확인

  • 빈 프로젝트에서는 해당 현상이 발생하지 않고 있습니다

GPU 모델 : Geforce RTX 5080

드라이버 버전 : Nvidia Studio 드라이버 581.57

샘플 프로젝트 : 게임 개발 리소스 및 개발 사항은 비공개 이므로 공유하기 어려울 것 같습니다

ConsoleVariables.ini

언급하신 정보 모두 추가하여 테스트 진행 하였습니다

// -rdgimmediate 해당 실행인자를 사용하면 GameThread timed 크래시 발생하여 제외

LogRendererCore: Error: GameThread timed out waiting for RenderThread after 120.00 seconds:

//크래시 발생 안함

-gpucrashdebugging -rdgvalidation=1 -d3ddebug -onethread

//크래시 발생 실행 인자

-gpucrashdebugging -rdgvalidation=1 -d3ddebug

Nsight Graphics 분석은 실패하였습니다

언급하신 ShaderDebugInfo와 Shader Source경로를 넣어서 확인해 보았으나

별다른 정보를 확인하지 못하였습니다

2025.11.06 폴더 내부에 덤프 파일 및 로그, nv-gpudmp 파일이 포함 되어있습니다

XeSS, DLSS, FSR3​ 등과 같은 업스케일 플러그인을 전부 제거해도 크래시가 발생하였으며

HWRT를 비활성화 하면 크래시가 발생하지 않습니다​

[mention removed]

안녕하세요~

일단은 r.RayTracing.PersistentSBT=0 으로 수정하여 테스트 한 결과 크래시 이슈가 발생하지 않았습니다

추후 5.7 업데이트 후 같은 문제가 발생하는지 확인해 보겠습니다

감사합다