Search Issue Tracker

Fixed in 2020.1.X

Votes

0

Found in

2019.3

2019.3.0f3

2020.1

Issue ID

1204156

Regression

Yes

[Metal] New HDRP Project crashes when switching to Integrated GPU on UnityGfxDeviceWorker thread

MacOS

-

So far I've reproduced the issue every time when loading my new HDRP project if I was running Dedicated GPU and trying to switch to Intel 630 (Kabylake), but never the other way around. Also the crash file seems to point at the Apple Kaby Lake metal driver having an issue. On 2019.2 it hangs for a bit then switches without crashing.

STR:

1. Create a new HDRP Project
2. Go to Unity Preferences
3. Select General
4. From the GPU dropdown, select Intel

Expected Result: GPUs switch correctly, user resumes tasks
Current Result: Editor hangs for a brief second and crashes

Reproducible with: 2019.3.0f3, 2020.1.0a15
Not reproduced with: 2019.2.16f1

Thread 106 Crashed:: UnityGfxDeviceWorker
0 libsystem_kernel.dylib 0x00007fff6b2762c6 __pthread_kill + 10
1 libsystem_pthread.dylib 0x00007fff6b331bf1 pthread_kill + 284
2 libsystem_c.dylib 0x00007fff6b1e06a6 abort + 127
3 com.unity3d.UnityEditor5.x 0x000000010898328e HandleSignal(int, __siginfo*, void*) + 62
4 libmonobdwgc-2.0.dylib 0x000000014637a269 mono_chain_signal + 79
5 libsystem_platform.dylib 0x00007fff6b326b5d _sigtramp + 29
6 ??? 0x00007fff9a35ac30 __kCFNull + 16
7 com.apple.driver.AppleIntelKBLGraphicsMTLDriver 0x00007fff38734898 CHAL_INTEL::COCLGen8CommandTransport::BuildGen8CommandBuffer(CHAL_INTEL::tagCHALCommandPacket*, unsigned int, unsigned int, unsigned int, unsigned int) + 510
8 com.apple.driver.AppleIntelKBLGraphicsMTLDriver 0x00007fff387918cb CHAL_INTEL::ChalContext::ChalExecuteKernel(CHAL_INTEL::tagDecodedBinaryInfo const*, MTLSize&, MTLSize&, MTLSize&, IGBufferMemory<31ul>&, sTextureArgument const*, sSamplerArgument const*, unsigned int const*, MTLRegion, MTLIGAccelBuffer*, unsigned int, MTLIGAccelBuffer*, unsigned int) + 971
9 com.apple.driver.AppleIntelKBLGraphicsMTLDriver 0x00007fff387467d0 IGAccelComputeCommandEncoder::dispatchThreadgroups(MTLSize, MTLSize) + 172
10 com.apple.driver.AppleIntelKBLGraphicsMTLDriver 0x00007fff38746674 -[MTLIGAccelComputeCommandEncoder dispatchThreadgroups:threadsPerThreadgroup:] + 234
11 com.unity3d.UnityEditor5.x 0x0000000109899d9a GfxDeviceMetal::DispatchComputeProgram(ObjectHandle<ComputeProgram_Tag, void*>, unsigned int, unsigned int, unsigned int) + 170
12 com.unity3d.UnityEditor5.x 0x00000001078505c1 GfxDeviceWorker::RunCommand(ThreadedStreamBuffer&) + 28497
13 com.unity3d.UnityEditor5.x 0x000000010989a86c GfxDeviceWorkerAutoreleasePoolProxy + 60
14 com.unity3d.UnityEditor5.x 0x0000000107859dc0 GfxDeviceWorker::RunExt(ThreadedStreamBuffer&) + 640
15 com.unity3d.UnityEditor5.x 0x00000001078490c8 GfxDeviceWorker::RunGfxDeviceWorker(void*) + 152
16 com.unity3d.UnityEditor5.x 0x0000000108810e8c Thread::RunThreadWrapper(void*) + 1228
17 libsystem_pthread.dylib 0x00007fff6b32f2eb _pthread_body + 126
18 libsystem_pthread.dylib 0x00007fff6b332249 _pthread_start + 66
19 libsystem_pthread.dylib 0x00007fff6b32e40d thread_start + 13

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.