ChatGPT解决这个技术问题 Extra ChatGPT

iPhone Simulator suddenly started running very slow

I have been working on an app in iphone simulator for a number of weeks and it has been running well up until now, but all of a sudden has begun running very slow both when loading content and animations. I have not made any changes to my code since I last tested it successfully.

I tried restarting the simulator (multiple times) and removing the app and doing a completely clean rebuild, but no luck. I also checked my cpu usage through the monitor while the simulator is running and I am only using about 30% of my cpu and 40% of memory.

I fully understand that the simulator is never a quick as the device itself, but it seems strange that it has suddenly started running slow after such a long time, and by slow I mean less than a quarter of its original speed.

Did you press shift three times in a row?
Hard to know, if I did what should I do? Is this the same as Toggle slow animations? If so I have tried toggling this several times without any luck.
Press shift three times again. Yep, it's the same.
Press CMD + T to toggle slow down
Before asking such questions, look what could have happened. In Xcodes output window, you see "Slow animations are now on", which clearly is the helpful hint here.

R
Ronan Boiteau

In the iOS simulator, at the bar on the top, click on DebugToggle Slow Animations (or Slow Animations with Xcode 10+). Chances are you accidentally toggled it on.


I tried this but it does not seem to make any difference. I also tried restarting after toggling, but it is still very slow. Also the speed issue doesn't seem to be limited to animation.
@Finglish Well, at least the most likely cause is out of the way. I'm not quite sure what else might be wrong. Do you have a version of the source from before it slowed down to compare to the source now? What has changed between when it was fast and now?
Not sure why this worked, but I saved but I made a new copy of the project and re-ran the simulator and it is back to full speed. I am not sure if this is just a coincidence though.
Oh wow this is likely happening to many (including me) because of the mapping to ⌘T , so if you're trying to open a browser or terminal tab it's probably toggling slow animations......
@Smitty this is exactly what happened to me haha :)
J
Joshua Pinter

Simple Command + T will fix this problem.

Command + T toggles the simulator's Slow Animations, which can be found under the Simulator Menu: Debug -> Slow Animations.


I accidentally pressed that key combination as I'm on the Chrome. lol (opening new tab)
Apple should really think of another keyboard combination.
C
Caleb

Go to the simulator's Debug menu and select "Toggle Slow Animations".

Update: In Xcode 10, it's just "Slow Animations":

https://i.stack.imgur.com/Rgnev.png


I bet every person looking at this answer hit cmd+T thinking they were in a different application and then started getting slow animations. Apple should remap the cmd+T keystroke to something way more arcane and less commonly used.
U
Urvish Modi

Select Simulator,

Select Debug and uncheck slow animation. shortcut command + t

That's work for me.


j
jcollum

If the Cmd-T (slow animations) option doesn't work for you and Debug -> Slow Animations is off but you still have slow animations try Simulator -> Reset Contents and Settings (or possibly Hardware -> Erase All Content and Settings). That worked for me when none of the other answers in here did. Anyone have a suggestion as to why?

Also having a debugger attached (at all) may make the animations very slow.


This worked for me, but I'm also curious why. I'm developing in React Native and I wonder if my application started to take up too much space with AsyncStorage. That is just a guess.
i have tried everything but nothing fixes the slowness i am seeing i am seeing fast animations but slow movement, like in scene kit i have a ball falling and it goes so slow that you can see it move like it is 1 fps and takes like 10 sec to hit the floor
This is no longer available with the current version of Xcode, but there is a Hardware -> Erase All Content and Settings... option.
Hardware -> Erase All Content and Settings... is the ticket.
It does not help in my case stackoverflow.com/a/59626207/3826175
B
Brandon

Another potential fix for React-Native users:

Chrome de-prioritizes Javascript running in any tabs not in the foreground. So if you have enabled remote debugging, be sure to put the debugger in its own window.


D
Digvijay Rajput

You accidentally pressed the slow animation on debug when using simulator. So Run Simulator -> Debug -> Uncheck Slow Animation.


Could you please elaborate more your answer adding a little more description about the solution you provide?
S
Saad Ur Rehman

I think you pressed command + T instead of command + R by mistake.


Command + R to refresh. Spend 20min trying to figure out how I ruined my app. Restart my Mac, the last resort. Come here, learn something new and rejoice.
G
Geoff Hom

I don't have the rep yet to leave a comment, but I upvoted some answers here and wanted to say more. I had a problem with slow animations in the iOS Simulator, especially on rotation, and I found this post via Google. Indeed, somehow "Toggle Slow Animations" must have been on, because three shifts fixed it. At first, I didn't think this was a problem because there's no checkmark next to "Toggle Slow Animations." It turns out there's never a checkmark, or any indication from the menu whether it's on or off. So just try toggling it and see if the rotation/navigation is faster/slower.

So, thank you!


Upvoted because of the extra info about the lack of visual feedback in Xcode
C
Community

Simulator -> Reset contents and settings works for me. The issue seems to reappear when I debug my react-native code remotely. It could also be to do with AsyncStorage as nomad suggested.


Stopping remote debug is what fixed my issue. Thanks!
m
mikep

It is NOT only about slow animations. Xcode simulator has extremely low performance in global. It is Apple's bug. I have reported it via Feedback Assistant. I have created demo with code demonstrating that simulator is 200 times slower than any old real device. I have found that JavaScript code with Date object executed in WKWebView is pain for simulator. Changing options in simulator does not help in my case. See jsfiddle https://jsfiddle.net/kjms16cw/ I hope Apple will fix it soon!

var log = document.getElementById("log"); document.getElementById("button").onclick = function() { run(); }; function run() { var d1 = new Date(); for (var i = 0; i < 1000; i++) { var x = new Date(); x.setMilliseconds(0); x.setSeconds(0); x.setMinutes(0); } var d2 = new Date(); log.innerHTML = ((d2.getTime() - d1.getTime()) / 1000) + " seconds"; }

Xcode Simulator Extremely Low Performance

This test runs fast (several tens milliseconds e.g. 30 ms) in any browser any device any platform including very old iOS device e.g. iPhone 5C and several years old iPad 2, BUT IN SIMULATOR IT TAKES 6000 ms (yes, 6 seconds!). Terrible!


UPDATE: Apple did not respond to my apple feedback ticket Jan 7, 2020 at 10:30 AM – FB7523875 (I can not provide link because any bug including non-security bug are not visible - terrible policy of apple - nobody see/know how many bugs are reported and not solved for ages) but I just tested this bug in Xcode v12.0.0 (12A7209) and wow problem is fixed! This test now runs fastly in simulator such as in real iOS device.
H
Heinrisch

You can try to turn off remote debugging (Cmd-D -> Stop Remote JS Debugging). That usually speed things up.


J
Josimar

When the chrome debug is active and the browser tab is not in the foreground, the emulator is slow too. For me, I decided to put the guide in the foreground.