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
 move data files to SSD
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

mikeblas
New Member

USA
7 Posts

Posted - Oct 05 2012 :  10:11:23 AM  Show Profile  Reply with Quote


Visual Assist X does a ton of file IO to look for symbols and structure. It's doing this I/O as I edit. Using Process Monitor, I see that the files it writes and reads are on my C: drive in my user profile directory at a path that looks like "C:\\Users\\MyUserProfileDirectory\\AppData\\Local\\Microsoft\\VisualStudio\\10.0\\Extensions\\Whole Tomato Software\\Visual Assist X\\10.7.1916.0\\Data\\vs10_1\\Proj_2060997457\\Db0Ds.db".

How do I move these files? I have a mechanical C: drive, and I have three or four SSD drives on each of my development systems. I'd like to move these files to the SSD drives as I think it would substantially improve the responsiveness of the IDE while Visual Assist X is enabled.


feline
Whole Tomato Software

United Kingdom
18755 Posts

Posted - Oct 05 2012 :  10:14:51 AM  Show Profile  Reply with Quote
You can tell VA to use a different directory by simply setting the new path in the registry, as explained in this FAQ entry:

http://docs.wholetomato.com?W332

I hope this helps to speed things up a bit for you.

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

mikeblas
New Member

USA
7 Posts

Posted - Oct 05 2012 :  10:32:09 AM  Show Profile  Reply with Quote
Thanks for the fast response! Sorry that I didn't find the FAQ myself.

This setting saves the day. Visual Assist is still doing an incredible amount of I/O and sometimes blocking as I try to type code, but it is much more tolerable than it was before now that the requests are serviced by SSD.

I notice the I/O work is extremely poor: it's not aligned, many of the requests are redundant and very small, and so on. Is there any chance this will be improved in near future versions of the product?
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18755 Posts

Posted - Oct 08 2012 :  12:47:11 PM  Show Profile  Reply with Quote
Are you working in a very large solution? How many files do you have in your solution?

If you open VA's Open File in Solution dialog (Alt-Shift-O) the title bar contains two numbers. The first number is the number of files currently listed, which changes as you filter the list. The second number is the total number of files in the list, which is normally the number of files in your solution. What is this second number?

I am wondering why you are seeing such a slow down with VA's IO. Normally people only report a problem like this when something is slowing VA down, often an anti-virus program, or they have a very large solution.

There is always room for improvement, and we work hard to make VA run as fast as possible.

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

mikeblas
New Member

USA
7 Posts

Posted - Oct 08 2012 :  12:58:53 PM  Show Profile  Reply with Quote

The bad I/O patterns are pretty easy to observe. If I run ProcMonitor, I see VAX going after files and reading n bytes starting at offset o. Then, it reads n bytes starting at offset o+m, where m is less than n. It's reading the same bytes again in two successive calls. Offset o is not divisible by the sector size; in fact, it's often an odd number, so multiple physical requests will be required. n is not a multiple of a sector size, either.

"Open File in Solution" says I have 3374 files.

I don't use virus software; I do run Microsoft Security Essentials, however. (So, maybe it semantically is "virus software", but not a traditional virus package like Kaperskey or Norton.)

The symptom that I'm noticing is that I'm typing along in a code file (a *.CPP or *.H file) and the IDE becomes non responsive. It is non-responsive for a couple of seconds every five or seven seconds or so. Running ProcMon shows that it is non responsive when all this I/O is happening. Once moved to SSD, the pauses still happen but are much (much!) shorter.

I haven't had the time to see if the problem is local to one project or not, but I did try deleting cached files ands rebuilding the symbol store in the VAX performance dialog.

Go to Top of Page

mikeblas
New Member

USA
7 Posts

Posted - Oct 08 2012 :  1:01:22 PM  Show Profile  Reply with Quote
Also: thanks for your responses and help!
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18755 Posts

Posted - Oct 08 2012 :  2:10:57 PM  Show Profile  Reply with Quote
That's a small solution, unless your files are massive, to have speed problems like this.

To put things into perspective, I have just been typing in a test class into a C++ .cpp file, using VS2010, VA 1916 and a large test solution, 25,153 files. This is working inside a virtual machine, with the virtual machine hosted on a spinning hard drive, and I am not seeing any sign of the IDE becoming unresponsive.

I have a large test cpp file, which is 23,000 lines long. So files this size or a lot bigger might help to explain the slow downs you are seeing, but even then, it should not be this bad.

How many processor cores do you have? Can you monitor your IDE CPU usage when the delays are happening, and see if this is matched with a CPU usage spike? Process Explorer will show you the per process CPU usage history, which can help with this.

I am wondering if very heavy C++ macro code might be causing our parser problems, if so this will probably show up as a CPU spike.

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

mikeblas
New Member

USA
7 Posts

Posted - Oct 08 2012 :  2:17:50 PM  Show Profile  Reply with Quote
I'm not using a VM, so I have all of the physical i7-3930K processor. I'll try to get a CPU graph for you ...
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18755 Posts

Posted - Oct 08 2012 :  3:43:57 PM  Show Profile  Reply with Quote
Along with the graph can you please go to:

VA Options -> System Info -> Copy Info

and paste the details (from the clipboard) into your reply. This will give us the basic information about your setup.

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