Xcode 7 is very slow

I just downloaded and installed it yesterday, and it is so slow, development has pretty much ceased.


It takes several seconds just to switch editor panes. If I click on a file, to change to another file, it can take many seconds. Furthermore, it seems that the indexing spinner comes on constantly.


I removed all my DerivedData from Xcode 6, and opened a single, very small, project using ObjectiveC only.


I opened instruments, and loaded Xcode, then waited. After a while, Xcode "hung" on me again... I clicked on a file to change files, and it just never responded. Here is a link to the instuments trace.


http://i.stack.imgur.com/vyuXv.png


I've heard of people having performance issues, but I've never experienced something like this, even with an extremely large project, so I'm at a loss as to what I can do here.


Thanks!

Replies

Yep, it also seems to be related to the tooltips for me.

As a workaround I've made the left pane wide enough to fit all my filenames so that no tooltips show, we'll see how that goes.

Exact same issues for me as outlined above (I have a MBP Retina, running Yosemite and Xcode 7.0.1). Making the left pane wider seems to have kept the issue from cropping up so far, will continue to monitor.

I have the same problem. Since Xcode 7 (even 7.1 beta) especially the UI performance is very slow. XIBs are taking very long to load suddenly. Just switching between code and views takes several seconds until I can start typing / doing something. I see the spinning wheel all the time.


I have a MBP Mid 2015 16GB RAM.

I am also suffereing from a very slow Xcode 7. It just isn't usable in this state. Clicking any button within Xcode, it takes at least one second for it to react. This time goes up if you click on more than one button in a short time. Working with Storyboards is impossible as it takes ages for you to search for the object you want and then when you finally have it, it takes ages to open up the panels you require for that object.


I have a new MacBook Pro (15-inch Mid 2015) with 16GB RAM on OS X Yosemite (10.10.5). I was previsouly running Xcode 6 fine on my older MacBook Pro.

UPDATE

So I downloaded Xcode 6.4 and its a bit faster for me but still not as fast as it was on my older MacBook Pro (15-inch Late 2011) with 8GB RAM on OS X Yosemite (10.10.5)

I see a different manifestation of Xcode going away, so I filed another bug report on Oct 03: #22962944


I included the console log for two separate manifestations. The log from today is filled with Xcode backtrace dumps.


Basically, this one also causes the window server to peg the CPU as well, resulting in Xcode "going away" for long periods of time.


Here is the start of the log from this morning...

10/6/15 9:23:15.109 AM WindowServer[180]: disable_update_timeout: UI updates were forcibly disabled by application "Xcode" for over 1.00 seconds. Server has re-enabled them.
10/6/15 9:23:29.111 AM WindowServer[180]: disable_update_likely_unbalanced: UI updates still disabled by application "Xcode" after 15.00 seconds (server forcibly re-enabled them after 1.00 seconds). Likely an unbalanced disableUpdate call.
10/6/15 9:23:31.263 AM Xcode[261]: void CGSUpdateManager::log() const: conn 0xf703 token 0x1ffffffe84fe85
10/6/15 9:23:31.420 AM Xcode[261]: Backtrace (at 76701.9):
10/6/15 9:23:31.420 AM Xcode[261]: void CGSUpdateManager::log() const:  0   CoreGraphics                        0x00007fff8f311501 CGSBacktraceCreate + 59
10/6/15 9:23:31.420 AM Xcode[261]: void CGSUpdateManager::log() const:  1   CoreGraphics                        0x00007fff8f366244 _ZN16CGSUpdateManager14disable_updateEv + 84
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  2   AppKit                              0x00007fff945fd430 -[NSView(NSInternal) _disableScreenUpdatesUntilFlush] + 226
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  3   AppKit                              0x00007fff943e3012 -[NSWindow disableScreenUpdatesUntilFlush] + 892
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  4   AppKit                              0x00007fff943e2b9a -[NSView(NSLayerKitGlue) _setUpLayerTreeSurface] + 76
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  5   AppKit                              0x00007fff943e2af5 -[NSView(NSLayerKitGlue) _setUpLayerTreeRendererAndSurface] + 42
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  6   AppKit                              0x00007fff943d4d4f -[NSView _setUpLayerTreeRendererAndSurfaceIfNecessary] + 56
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  7   AppKit                              0x00007fff943d3701 -[NSView _setWindow:] + 2084
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  8   CoreFoundation                      0x00007fff904b2705 __53-[__NSArrayM enumerateObjectsWithOptions:usingBlock:]_block_invoke + 133
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  9   CoreFoundation                      0x00007fff904b1e09 -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 313
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  10  AppKit                              0x00007fff94b57454 __21-[NSView _setWindow:]_block_invoke735 + 169
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  11  Foundation                          0x00007fff9401048e -[NSISEngine withBehaviors:performModifications:] + 155
10/6/15 9:23:31.421 AM Xcode[261]: void CGSUpdateManager::log() const:  12  AppKit                              0x00007fff943d41aa -[NSView(NSConstraintBasedLayout) _withAutomaticEngineOptimizationDisabled:] + 70
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  13  AppKit                              0x00007fff943d3b54 -[NSView _setWindow:] + 3191
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  14  AppKit                              0x00007fff944b1017 -[NSScrollView _setWindow:] + 482
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  15  CoreFoundation                      0x00007fff904b2705 __53-[__NSArrayM enumerateObjectsWithOptions:usingBlock:]_block_invoke + 133
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  16  CoreFoundation                      0x00007fff904b1e09 -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 313
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  17  AppKit                              0x00007fff94b57454 __21-[NSView _setWindow:]_block_invoke735 + 169
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  18  Foundation                          0x00007fff9401048e -[NSISEngine withBehaviors:performModifications:] + 155
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  19  AppKit                              0x00007fff943d41aa -[NSView(NSConstraintBasedLayout) _withAutomaticEngineOptimizationDisabled:] + 70
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  20  AppKit                              0x00007fff943d3b54 -[NSView _setWindow:] + 3191
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  21  CoreFoundation                      0x00007fff904b2705 __53-[__NSArrayM enumerateObjectsWithOptions:usingBlock:]_block_invoke + 133
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  22  CoreFoundation                      0x00007fff904b1e09 -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 313
10/6/15 9:23:31.422 AM Xcode[261]: void CGSUpdateManager::log() const:  23  AppKit                              0x00007fff94b57454 __21-[NSView _setWindow:]_block_invoke735 + 169
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  24  Foundation                          0x00007fff9401048e -[NSISEngine withBehaviors:performModifications:] + 155
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  25  AppKit                              0x00007fff943d41aa -[NSView(NSConstraintBasedLayout) _withAutomaticEngineOptimizationDisabled:] + 70
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  26  AppKit                              0x00007fff943d3b54 -[NSView _setWindow:] + 3191
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  27  CoreFoundation                      0x00007fff904b2705 __53-[__NSArrayM enumerateObjectsWithOptions:usingBlock:]_block_invoke + 133
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  28  CoreFoundation                      0x00007fff904b1e09 -[__NSArrayM enumerateObjectsWithOptions:usingBlock:] + 313
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  29  AppKit                              0x00007fff94b57454 __21-[NSView _setWindow:]_block_invoke735 + 169
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  30  Foundation                          0x00007fff9401048e -[NSISEngine withBehaviors:performModifications:] + 155
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const:  31  AppKit                              0x00007fff943d41aa -[NSView(NSConstraintBasedLayout) _withAutomaticEngineOptimizationDisabled:] + 70
10/6/15 9:23:31.423 AM Xcode[261]: void CGSUpdateManager::log() const: conn 0xf703 token 0x3ffffffe84fd0a

So it turns out for me that the issue is something to do with my external monitor/graphics card.


If I have the Xcode window open on my MacBook screen then it works fine. As soon as I move it over to my external display (which is where I always have it as its a bigger screen) then it just goes SUPER slow and becomes unusable.


MacBook Graphics: AMD Radeon R9 M370X 2048 MB

External Display: Lenovo ThinkVision LT2452p


EDIT


Looks like I'm not the only one suffering with this issue and its also not new: http://stackoverflow.com/questions/26369876/xcode-6-interface-builder-very-slow-performance-when-showing-viewcontrollers-wit


EDIT-2


Just noticed that when I have my external monitor in, the graphics card changes:


With External Monitor: AMD Radeon R9 M370X 2048 MB

Without External Monitor: Intel Iris Pro 1536 MB

I have the same problem -- storyboard is extremely slow when displayed on external monitor. I have XCode 7.0.1 running on a new Macbook Pro. Hodson, were you able to submit a bug report?

This really made a difference for me. My machine had not allowed me to do anything for 20 mins, disabled source control and it was working full speed again in seconds.


Great tip.

Xcode 7.0.1, specifically Interface Builder, is extremely slow on my MBPr 13" early 2015, i7 16GB RAM. I am also running on an external 27" 2560x1440 monitor. The interface becomes completely unusable. I can't even drag a view around in its hierarchy. It takes minutes for menus to update after clicking on anything.


I've learned my lesson analyzing these serious bugs in Apple development tools. I've submitted extremely detailed bug reports previously, only to have them closed or ignored. These same bugs live on for years, never resolved.

Moving the Xcode window onto the laptop's retina display and Interface Builder all of a sudden becomes usable, the CPU fan spinning down to normal.


Interface Builder clearly has major issues when it comes to display scaling. In this case, it doesn't like the non-retina external display. Another serious bug I've filed a detailed closed-as-duplicate bug report on and describe in depth here, is caused by retina displays. It corrupts your storyboards, shrinking and shifting view frames.

I experienced another one, but this time it was very different in that the CPU pegged at 100%, Xcode became completely unresponsive, and I had to force quit.


The system generated a spindump. I created a new bug report because it did not seem to be the exact same: 23040724.

Yeah, I wish I could find something to help. I'm working directly on a 27-inch iMac, so no external display involved at all.


Hopefully more bug reports will gain some attention to these problems as Xcode 7 is almost unusable (though this project I'm working on is investigating the recent core data changes, which requires Xcode 7).

I have same issue xcode is running verry slow

Count me as another developer that is experiencing extreme slowness from xcode since upgrade.


I usually have to restart xcode and it works okay for about 10 minutes then completely locks up. Either stuck indexing or just the rainbow spinny thing.


I've tried destroying the DerivedData folder before restarting.


I'm running this directly on a MacBook Pro - mid 2013 model. Xcode 6 worked perfectly fine on this, just since the upgrade this has happened. It is extremely frustrating and takes a toll on productivity.


Hoping that Apple finds a solution for this. Thank you.

There is not enough information provided in this conversation for us to be able to investigate further. At this point it's not at all clear that your separate "me too" reports are even about the same underlying issue. If it is important for anyone CCd to this conversation that we look into and resolve the performance problems that you are currently observing, please consider collecting the required performance data (sample / spindump / sysdiagnose) *while* you're experiencing the problem, and then submit that information to us in a new bug report. Thanks!