Author Topic: Recommended settings for fast performance (tagging, etc).  (Read 14963 times)

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Recommended settings for fast performance (tagging, etc).
« on: August 03, 2012, 06:40:42 PM »
There's been other threads about this kind of stuff but nothing which has helped me. And a lot of it seems to focus on similar but slightly different performance problems (e.g. slowness related to tagging resuming when SlickEdit gets window focus back... that's not my problem here at all).

I use SlickEdit on Linux+Mac and Visual Studio with the Visual Assist X plugin on Windows for a C++ project. I've been recently doing a bunch of work on Windows and have just now come back to Mac having finished what I needed to use Windows for. I've been working on the same project which is multi-platform, just needed Windows for debugging issues with certain SDK's.

For this project of mine, the same source compiles on Win/Mac/Linux. The IDE project/workspace files for each platform all include the same source files give or take 1 or 2 small files here and there. Basically, nothing is really omitted from tagging on any platform. I just use #ifdef's to handle including/hiding certain platform-specific bits.

Unfortunately I have to say that it's been kind of a jarring experience coming back to SlickEdit as far as performance is concerned. I'm talking about performance when just straight-up typing in code. Building tag files initially is fast and hasn't been a problem.

Visual Studio was butter-smooth for me the entire time, including when it popped up auto-complete information while typing very fast.

SlickEdit is constantly pausing for short periods (0.5s - 1s) all the time just before it would pop up auto-complete info. I type pretty fast, and when I know I don't need the auto-complete I just try to type through it. Typing like this is possible but really annoying as I constantly have to wait a few seconds for SlickEdit to catch up depending on what I was just typing.

I can't help but feel like I've got something configured incorrectly. This problem seemed to get slightly better going from v16 to v17, but the problem is still very much present.

My workspace tag file has 571 files and is 6MB in size, which seems to be quite small to me. I can't imagine that's the problem. I'd be happy to provide more info about my current settings and other tag files if that would help.

I've tried playing with a lot of different settings, even wiping out my existing config and trying the default settings and not much seems to make a difference. The biggest performance increase I get is by disabling symbol coloring. However it's definitely not enough to bring performance up to Visual Studio levels. Add to that, with symbol coloring disabled I'd honestly rather use Visual Studio + VAssistX at that point which strangely enough doesn't seem to have a problem.

Anyway, I'm wondering if someone could maybe help me out with some recommendations for what settings I could use to get the best text editing performance possible with SlickEdit without completely disabling context tagging or something silly like that.

Thanks in advance!
« Last Edit: August 03, 2012, 06:45:10 PM by Gered »

Dennis

  • Senior Community Member
  • Posts: 3961
  • Hero Points: 517
Re: Recommended settings for fast performance (tagging, etc).
« Reply #1 on: August 03, 2012, 08:01:18 PM »
There are many options on Tools > Editing > Context Tagging for adjusting tagging performance.

I would suggest turning off Symbol Coloring.  SlickEdit's symbol coloring is a much more sophisticated system than what Visual Assist does, but if your code is sufficiently complex, it can lead to some delays.

You can also turn off auto-complete.  It shouldn't get in your way, but you can always bring it up on-demand by hitting Ctrl+Space or Alt+Dot.

If your project is using the Boost library or making heavy use of the STL, I would recommend working with the features disabled, simply because the symbol analysis SlickEdit has to show auto-completions for those libraries is very intense.  If you have ever traced these libraries you should know.

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #2 on: August 03, 2012, 08:14:33 PM »
I don't use Boost at all, but I am using EASTL as a substitute for the standard STL.

I realize it wasn't completely fair to compare Visual Studio + VAssistX to SlickEdit's symbol coloring either... definitely SlickEdit's is a lot more powerful. It is pretty unfortunate though that in most cases you seem to get far better performance by turning it off. Hoping we can get some kind of performance enhancement there in the future. Sometimes it almost feels like a wasted feature.

Turning off auto-complete isn't really an option... sometimes I need it, sometimes I don't. I'm not going to lie, without both symbol coloring and auto-complete, I'd rather just use Sublime Text on Mac+Linux. Kind of disappointed to see that being one of the suggestions but I can't say I'm surprised. Hoping there's some upcoming performance improvements there too.

I've played around with a lot of the settings in Tools > Editing > Context Tagging. Not much seems to make a difference.

I have to be honest, I don't see myself renewing my maintenance subscription next year with the way performance is now as it really does feel like a night and day difference when using most other editors. Which is a shame, as SlickEdit really has a lot of features that I would miss.

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #3 on: August 04, 2012, 10:23:41 PM »
Alright, so I probably should have at least tried working with auto-complete turned off for a while before posting my last post. As much as I love auto-complete, I could probably get used to having to trigger it manually when I need it.

With both auto-complete off and symbol coloring off the speed is... acceptable. Symbol coloring improves readability such that I'm going to "suck it up" and leave it on though. Seems that auto-complete makes a lot more of a dent in text-editing performance then symbol coloring does (which I guess makes sense thinking about it some more).

I still maintain that it's kind of sad having to turn both of those off just to get to acceptable text-editing performance though. I get it that SlickEdit's tagging, auto-complete, etc. is more powerful then most other editors that provide similar features. I'd guess however that this "excuse" won't be good enough for many other people evaluating SlickEdit versus other tools. I'd hope that the SlickEdit team recognizes that performance in these areas could use some work yet. :)

hs2

  • Senior Community Member
  • Posts: 2761
  • Hero Points: 292
Re: Recommended settings for fast performance (tagging, etc).
« Reply #4 on: August 05, 2012, 09:25:00 AM »
I'm using 'autocomplete' on demand. This should always work and you get assistance when you need it. You could follow the hint Dennis explained (using default CTRL-SPACE, ALT-DOT) or bind any other key to the 'autocomplete' command. Hope it helps.
HS2

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #5 on: August 05, 2012, 12:10:54 PM »
That's what I said I did try in my last post.

hs2

  • Senior Community Member
  • Posts: 2761
  • Hero Points: 292
Re: Recommended settings for fast performance (tagging, etc).
« Reply #6 on: August 05, 2012, 02:30:28 PM »
Ok - wasn't 110% clear to me. Hence I mentioned it again. HS2

skywise

  • Senior Community Member
  • Posts: 331
  • Hero Points: 10
Re: Recommended settings for fast performance (tagging, etc).
« Reply #7 on: August 06, 2012, 10:16:13 PM »
Actually I up the display after idle time (Tools | options | Context Tagging | Auto-complete performance tuning) to 1500 ms which seems to work with my typing speed for SE to kick in if I'm going "uhhhh...".  Of course I drink a lot of caffeine so you might want a slightly longer delay.   ;)

One suggestion for the SE guys - Maybe make the auto-complete somewhat language dependent so that it wouldn't trigger until you typed a '.' or '->' or '::'?  Although I personally like using the autocomplete for long variable names my primary usage is to bring up the object members.

Dennis

  • Senior Community Member
  • Posts: 3961
  • Hero Points: 517
Re: Recommended settings for fast performance (tagging, etc).
« Reply #8 on: August 07, 2012, 03:28:03 PM »
@skywise  What you are suggesting is completely possible, just turn off Auto-Complete and turn on Auto-list members.

@Gered  One other suggesting on symbol coloring.  There is an option under the language specific symbol coloring options to use a simple stupid symbol lookup instead of using full symbol analysis.  This might make symbol coloring a lot faster for you, without too much loss of information, especially if you are comparing to something that doesn't do symbol analysis at all.

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #9 on: August 07, 2012, 06:59:19 PM »
I'll give that a shot Dennis, thanks!

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #10 on: August 07, 2012, 08:03:25 PM »
Ah, apparently I had found that option a while back and had set it to that already ("Use fast, simplistic symbol lookups"). I guess that's probably about as good as I'm going to get it for now...

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #11 on: August 08, 2012, 10:21:02 PM »
@skywise  What you are suggesting is completely possible, just turn off Auto-Complete and turn on Auto-list members.

Am I doing something wrong? I cleared the "Enable auto-complete" box and checked the "Auto-list members" box but it doesn't work. If I check "Enable auto-complete" and uncheck everything in that section then it works but I don't know if this is just the auto-complete stuff and not the auto-list members setting doing it's thing.

chrisant

  • Senior Community Member
  • Posts: 1410
  • Hero Points: 131
Re: Recommended settings for fast performance (tagging, etc).
« Reply #12 on: August 09, 2012, 12:10:03 AM »
@Gered, can you clarify more specifically what doesn't work?

Turning off auto-complete should result in no more automatic popups for completion while typing.  But pressing Ctrl+Space should manually cause a popup for completion to appear.

Gered

  • Community Member
  • Posts: 27
  • Hero Points: 1
Re: Recommended settings for fast performance (tagging, etc).
« Reply #13 on: August 09, 2012, 12:18:46 AM »
Yes, I understand that. I'm trying to do what skywise and Dennis were talking about with Auto-list members where, if I understood correctly from both of them (maybe I didn't), auto-complete would not ever automatically trigger until '.', '->', or '::' is typed.

Attached is how I currently have the options set, which I thought matched what Dennis was suggesting to skywise. With the options set like this, even typing '.', '->', or '::' doesn't trigger any kind of auto-complete at all. Manually triggering auto-complete at this point pops up the expected list though.

EDIT: I've been fiddling with different options in the past couple days so just to be sure I tried setting this up with an out-of-the-box config and it still didn't work with the "C/C++ > Auto-Complete" options section set the way it was pictured in my attached screenshot.
« Last Edit: August 09, 2012, 12:29:39 AM by Gered »

chrisant

  • Senior Community Member
  • Posts: 1410
  • Hero Points: 131
Re: Recommended settings for fast performance (tagging, etc).
« Reply #14 on: August 09, 2012, 05:06:21 AM »
Yes, actually it seems auto list-members on punctuation isn't working for me either.  Perhaps it's a regression in v17.0.1?