Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 Alt-M lag on VS2022 in med/large files
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

greysphere
New Member

USA
3 Posts

Posted - May 06 2024 :  5:33:30 PM  Show Profile  Reply with Quote
Upgraded to the current version (10.9.2515) on VS2022 (17.9.34728.123) and Alt-M takes about a second to fill in the dropdown box on a 7k line C++ file with a couple hundred functions (no templates, no classes/methods, nothing at all crazy). 50k file with 1000 functions is ~5sec.

My last version (I'm guessing was 2019-ish on VS2017) this operation was instant.

Is there anything I can do with VA to avoid this lag?

I'm going to try to find a build that doesn't have this problem. Wish me luck.

greysphere
New Member

USA
3 Posts

Posted - May 06 2024 :  6:10:17 PM  Show Profile  Reply with Quote
2471 Alt-m is about 2x as fast.

2443 is even faster - <100ms on the 7k file. Maybe 300ms for the 50k file. (300ms is still noticeable, but miles better than ~5s). Hmm, there does seem to be a cache clear or something because after 2min alt tabbed writing this the 50k file was more like 1sec the first time. And looks like typing something in the file seems to invalidate the cache as well. So seems like ~1s for real world use cases on the 50k file. 7k file after typing is still probably in the 100-200ms range.

Doesn't seem like anything older works w/ VS 2022.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19039 Posts

Posted - May 07 2024 :  07:46:47 AM  Show Profile  Reply with Quote
File size alone does not seem to matter, the Alt-M list is appearing "instantly" for me in a large test cpp file, which is 23,000 lines long. It doesn't contain many methods though.

So, I have found another large file. This file is 26,000 lines long, and using the Powershell command:

Select-String "^\w+" .\test_large_number_of_methods.cpp | Measure-Object -Line

to basically do a grep on the file, I am being told that this test file contains 1556 functions.

Running under Windows 10, with VS2022 version 17.9.6 and VA 2520, the Alt-M list is appearing in this file after maybe 2 to 3 seconds. Yes, a slight delay, but not seeming as bad as the numbers you are seeing.

More interestingly, I am seeing basically the same performance, in the same test file, when using VA 2443.0, so I am not seeing any clear signs of the Alt-M list getting slower, at least not so far.

Are you seeing this problem in library code, or code from your solution? If this is library code, is it a library I can simply download? I am looking for an easy way to test the same files you are testing, to see if this will let me produce the same results here. We are clearly seeing different results, but I am not sure why.

zen is the art of being at one with the two'ness
Go to Top of Page

greysphere
New Member

USA
3 Posts

Posted - May 08 2024 :  5:31:12 PM  Show Profile  Reply with Quote
I ran some more tests. I think my original 2515 numbers could be inflated due to having the project open a long time (weeks).
After reboots and reinstalls I get numbers that seem similar to what you are seeing.
I also tried on a 'complex' library file that I've uploaded to github at https://github.com/gatesjef/vafiles (the previous files are app files, unfortunately).

Here's a summary of the results (everything has ~20% error):

botan_all_android.cpp // complex - 100k, classes and templates and all sorts of stuff
2520 ~7 sec cold, ~1sec hot
2515 ~6 sec cold, ~2sec hot
2443 ~7 sec cold, ~2sec hot

myfile50k.cpp // simple - ~1000 functions
2520 ~2 sec cold, 300ms hot
2515 ~2 sec cold, 300ms hot
2515 (long) ~ 5s cold, 2s hot
2443 ~2 sec cold, 100ms hot (this could be in my head, but the hot case feels slightly faster, but very minor)

myfile7k.cpp // simple - ~100 functions
2520 instant
2515 instant
2515 (long) 1sec cold, ~100ms
2443 instant

So the answer seems to be 'reboot your machine' which I probably should have tried from the get go.

I don't have access to my old machine to compare, so the only thing I can say is "I never noticed this before" so take that for what it's worth. So maybe there's something there, or maybe it's in my head.

I think my concerns are addressed. Thanks for following up with this.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
19039 Posts

Posted - May 21 2024 :  1:27:00 PM  Show Profile  Reply with Quote
Strange that this builds up over time, but I am glad you have found a simple solution. Since I am in and out of different tests all the time none of my IDE's tend to have much up time, so not something I am likely to run into.

zen is the art of being at one with the two'ness
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000