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!

Remove any unsupported third-party plug-ins that you have installed. If you can still reproduce the problem, file a bug report (using the Report Bugs link at the bottom of this page) with the instruments trace attached. Thanks!

Having the same problem here.

After the update to xcode 7 my productivity dropped down. Xcode constantly freezes. Dont know what to do.

This could be due to the hardware you're using but, it is also very true that xCode has

been growing progressively slower for the past several versions. You really need a lot

of RAM and fast storage with recent versions. Multiple cores (beyond 2) is also very

helpful.

Same here and it's not about the hw performance, it must be xcode 7's problem.

My machine is MBPR late 2013, 16GB ram, was okay with xcode 6.

If you file bug reports, and share the ids of your bug reports, there's a much better chance that whatever you're running into can be addressed, or that someone would be able to offer suggestions for fixes or workaroundfs.

I'm having the same issue. Xcode is horribly slow on my 2014 MBP with 16GM RAM. Xcode 6 was comparatively fine.


I've reported a bug, ID:

22860652

I only had one plugin installed, and I removed it. I still see the behavior afterwards.


I attached two instruments traces to the bug report. Here is the radar number: 22878987


I added another instruments trace, which shows xcode spinning at >95% cpu for over two minutes before it switched to a header file that has 15 lines of objective c code, including blank lines and the 6 line comment block at the top.


Also, I added a file with all xcode related entries from the console, and a spindump from a CPU warning also found in console.

See bug report 22892927. I've included a screen recording.

Recently I did the upgrade to Yosimite + XCode 7.0, and also was very slow (horrifically at times).


For me, I disabled Source Code (Never used it before - I do my own multiple probably OCD backups 😝) and for some reason it's enabled by default now?


Now it's all smooth again 🙂


Hope that helps!

This seems to a useful tip. In my case I didn't disable source control as I am using it, but commiting changes seems to have addressed the performance issues, at least temporarily. It seems that at least one cause of the slow down is the number of uncommitted changes in a project

I just had a project open with no uncommitted changes and it was still doing it.

Going to try disabling source control, but I'm really hoping Apple fixes this quickly. 7.0.1 is out, but there was nothing in the release notes about addressing performance.

Just to add some information to this discussion, I have a very repeatable issue with tooltip rendering in the Project Navigator (files tab) in the Navigator (left) sidebar. Basically, if I move my mouse around in there over files, Xcode CPU usage spikes and after a few seconds (on a Retina MacBook Pro with an SSD) it renders a tooltip showing the full filename and then the CPU spike ends. If you hover over a lot of files (by momentarily spinning your mouse around a list of 6-8 files) Xcode will lock up for nearly a minute. I haven't (yet) reported a beg related to this, but I was wondering if I was alone in this or if anyone else can reproduce it.


I've disabled source control and it has no effect on this particular slowdown.


EDIT: It seems to go away with a fresh launch of Xcode. I'll post again if it happens again (it was not a 1-time thing, I've noticed it every day since I upgraded).

There are two camps of Apple devs... those who have worked for Apple and say file a radar or gtfo... and those who have told me that it's a waste of time.


I guess I naively believed your post... that filing a bug report may result in fixes, or suggestions, or workarounds.


I spent a lot of time creating log files, instrument traces, and uploaded numerous helpful documents to my bug report. What did I get? A response on the bug telling me to disable third party plugins... which I had already done... and then when I responded with thiat piece of information, they CLOSE my bug report as a duplicate of another bug report referenced in this same thread (22860652).

How do they know it's a duplicate unless they have identified the problem. It could be completely unrelated to the other issue. If they have identified the problem they could at least say so.


I know it does not matter, because I'm just one developer, but this totally *****. What help will I ever get on this problem?


I appreciate you and others at Apple helping, but all of you say the same thing... and few of us get any satifaction from filing bug reports.


I expected something... maybe some work around or something... Xcode spins for MINUTES... I can't get anything done.


I guess my only solution is to remove xcode 7 and install xcode 6.


Would wasting one of my support requests even be worthwhile for this? I'd do it if I thought there was any chance it would get somebody's attention and get the problem addressed.

Please keep me posted. My bug report was marked as a duplicate of yours... and closed. So, I guess I'll never hear anything again about it.


I sure hope you gave the lots of information, because my report is closed which means I guess they will not look at all the extra information I provided.

I also intentionally left out the detail of me removing the two plugins I use (Alcatraz and VVDocumenter) before restarting. I didn't want my post to be dismissed out of hand as a problem with plugins.


Xcode (plugin free) is choking as we speak. I'm running various instruments on it and saving the results. Currently, Xcode is still struggling with about 10 seconds of mouse jiggling (in the Leaks instrument so it's greatly affecting the speed). Between that sentence and this one, it finished. 10-20 seconds of circling the mouse around in the Project Navigator over the same 5 classes (5 .h, 5 .m files) took almost 17 minutes to become responsive again. For the duration of my mouse circling (not even clicking, mind you) Xcode was making allocations as long as my mouse was moving. The only time in the instrument that it flatlined on the way up was when Xcode froze and wasn't accepting more mouse events.


I've also run the CPU time instrument, and the Counters instrument. Different runs, same behavior. Links to download the traces are below.


https://copy.com/jQ8dWmbZeWR63Szr (note, the Leaks trace is 1.9 GB)


While it's like this, are there any other instruments I should run? I tried to run the system trace one, but it froze, wrote and read a bunch of data to and from disk and then instruments crashed.


The only things I've done with Xcode is run it since yesterday and do some development work with it (maybe 3 hours total that Xcode was in focus after my post).


Also, just noticed this. Xcode will struggle if I try to rapidly switch between a few files (by clicking on them in the Project Navigator). It seems to wait for the source code coloring to finish before switching the next file every time. Maybe it shouldn't.

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.

Xcode 7 is very slow
 
 
Q