Serious performance issues on Mac with 4.21

For the past several weeks, I’ve been having significant problems using 4.21 on an iMac Pro. It constantly beachballs and freezes not just the Unreal Editor and related processes, but freezes the entire machine. It often freezes for 2-3 or more minutes, often after making just a minor change to a shader node or when selecting “Import”. It can affect most any part of the app, but it seems to happen most frequently when working on material node graphs, using the skeletal mesh editor, or trying to import an asset.

I’m not seeing a lot in the logs (attached) to indicate what the problem is, but one thing does stand out:

[2019.03.23-18.07.04:094][110]LogUnrealEdMisc: Warning: Heartbeat event firing too frequently (0.000 sec). This should never happen. Something is wrong with the timer delegate!

It seems to log this about every 2-3 minutes while using the editor. It often, but not always, happens right after a cache miss:

[2019.03.23-18.14.31:752][708]LogMaterial: Display: Missing cached shader map for material FMatExpressionPreview MaterialExpressionTextureSampleParameter2D_7, compiling. 
[2019.03.23-18.15.54:637][729]LogUnrealEdMisc: Warning: Heartbeat event firing too frequently (0.000 sec). This should never happen. Something is wrong with the timer delegate!

It also looks like shaders are recompiling a lot more than they typically do. While working on the material node that was triggering all the pauses, I saw it doing 134 shader compiles several times a minute. It’s hard to say if they happen at the same time as the freezing because my entire machine freezes, including the console app. I can’t even get a screenrecording of it, because it skips recording during the freeze.

Logs from sample project where the problem happens

UE4 is essentially unusable for me right now on the fastest computer Apple currently makes, so if there’s a fix or a workaround for this issue, I would be extremely grateful to hear of it. Even a tip on where to dig into the source code would be appreciated. I may try setting a breakpoint in FUnrealEdMisc::EditorAnalyticsHeartbeat() to see if I can identify the root cause, but it’s been a couple of years since I worked with the engine code and I’m not confident in my ability to figure this one out since my machine freezes so completely when it happens.

Hello,

We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.

https://epicsupport.force.com/unrealengine/s/

Thanks

You might want to consider having a blurb or warning that shows up when you select “Bug Report” as the question type, or perhaps just remove that option altogether? Very frustrating to take the time to file a bug and then be told to file again somewhere else.

Opened Case #00104615