GP SoftwareTwitter
Opus FAQsManualCommandsObjects

Slow folder listing with SolidWorks files


#47

Object Dock and CursorFX being involved seems odd, although I'm not too familiar with them so perhaps they are involved in ways I don't realise, but AFAIK, one is an app launcher and the other changes the mouse cursor. The cursor might be changing while the folder is read but that's the only connection I can imagine.

Which columns are you displaying when it seems to speed things up? It's possible that populating certain columns will triggering the shell extension's slow operation, but in the background, and then that information may be cached for the next thing that asks for it. (That's not the only possibility, but example of how the counter-intuitive result might make sense, although it's not what I would have expected either.)


#48

@hpbeme. Is it possible that you can send me a copy of your opus settings so I can try on my setup and see if I can reproduce your problems as I have solid works setup on my home computer ? This might help to rule out something peculiar with your setup.


#49

You are correct Leo, one program is a launcher, the other is used to apply custom cursors.

Object Dock has caused issues with other programs in the past, so that is why I experimented with unloading the it. To quantify its impact: The load time for a folder with 38 SW files went from 16 to 2 seconds. That delay was very repeatable in my testing.

CursorFX is not as clear cut. It appears to add about 2 seconds to whatever the baseline time is, and is fairly repeatable. However, it might be attributable to just the natural variations in load times.

Scrolling lists still hangs/glitches whether CursorFX is loaded or not. Hard to say if CursorFX is making the scroll hang-up longer before it returns completely back to normal. When I test for this, it will scroll fine for a second, then stop, stutter some, then scroll again for a second, etc, making it impossible to time this event in a consistent manner.

The columns I display in addition to Name are: Extension, Size, Modified Date/Time, Folders (Total), Files (Total). Removing all those columns except NAME drastically increases load times, and is also very repeatable.

This last bit is for Paul – I would gladly send you my settings file… thanks for your offer to help! How should I get it to you? I did not see an option to attach a file to a private message.


#50

@hpbeme sent you a private message.


#51

@hpbeme Ok, tried your opus setup and it performs exactly the same way that my opus setup performs. That is to say that the listers populate almost instantaneously with a generic non-solidworks icon and then this generic icon is replaced with an icon representing the model, drawing or assembly's contents. I should mention that the mouse pointer does flash back and forth between the ordinary pointer and the wait pointer on both setups. Scrolling up/down is near instantaneous even while the icons are being populated and so is traversing folders. I'm not sure how many solidworks files you have in your most populated folder; I have 247 in my most populated and that is the one i've used to report these results. I use Bitdefender antivirus which I find is very light on hogging the system as opposed to other AV software ive tried which really make the computer's general performance suck! I'll email you my setup just so you have a comparison. Personally, I'd be looking elsewhere for the problem than DOpus. AV software maybe?


#52

If the Solidworks shell extension keeps causing the mouse cursor to change (which is interesting; maybe it is launching a helper process each time an icon is requested?), that could explain the tie-in with CursorFX. Maybe Solidworks is putting the machine under a lot of load to generate the icons and that's making CursorFX slow to load its cursor resources, which then blocks the UI thread. Just a theory, though.

Of the columns you mention, Folders (Total) and Files (Total) both cause the entire subdirectory of each displayed folder to be read, recursively, so they could be causing additional disk access in the background which may have some effect, either positive (the directory listings will be cached, if something else then requests them) or negative (the extra disk access could slow something down that's also using the disk). (If the subfolders only have a few files, or there are no subfolders, then I would not expect those columns to have much effect at all, on the other hand.)

AV may well be involved, as in any performance issue.

How to find components causing high CPU usage may be worth a try.


#53

Hey Paul, thanks for taking the time to check out my settings on your machine. Your outcome was expected, as it is for when I loaded your DO settings on my machine… that is, it had the same delays/glitches as when I used my own settings.

I have a question though – you have said in several posts, the “icon representing the contents” – I take that to mean you have the SW option checked “Show Thumbnail Graphics in Windows Explorer” in System Options/General page… is that correct? I ask, because I only use the three basic SW icons for model/assembly/drawing. I personally never use that option since it attempts to show the file “contents” as a teeny-tiny icon. It is checked by default when you install SW, but I always uncheck it. If you are using that option and are still getting fast file list loads then that is indeed impressive, because loading those style icons definitely takes longer, regardless of machine setup or whether you use WE or DO.

Since Leo or Jon have never used SW, I fear that when they read this I will have confused them with the “thumbnail graphics” reference. I worry, since this whole thread is about SW icons, and SW does something when this particular option is checked I have not seen in any other program. But since I NEVER use that option, I had forgotten about it as yet another variable. Do you want to take a shot at describing for the non-SW user what I am talking about?

As for my AV software, my Cable Company, Comcast, provides Norton Security Suite for free. I have to say, it is the most unobtrusive AV I have ever used – its CPU usage is zero every time I check task manager (except when I ask it to perform a task real-time of course). I did turn it off though and run the same tests as previously, and there was no difference.

I have more info in response to Leo’s post, but I am heading out now and will reply to his questions/comments tomorrow.


#54

Yes, that is correct.


As an experiment, i turned off this option to see what happens; same result as before

Capture2.PNG

Both Solidworks settings cause the lister to populate more or less instantaneously and then the icons are drawn with the mouse pointer rapidly changing from normal to wait pointer.

I have EXACTLY the same behaviour happen in Windows Explorer as well as Opus with the setting "Show Thumbnail Graphics in Windows Explorer” on or off. To me, if Opus behaves like Explorer does now, then GPSoftware have fixed their side.

Personally, I'd be inclined to uninstall Object Dock and the CursorFx program and see how you get on then.



#55

I have now uninstalled both ObjectDock and CursorFX - sadly it did not improve upon just simply unloading their process that I had previously tried. There is still a 2 to 5 second delay for the list to load (depending on total number of SW files). When scrolling a list of 207 SW files it stops, starts, stutters with the cursor flashing normal/waiting thruout. After about 15 seconds it scrolls normally.

I launched the Process Explorer side-by-side with DO, and then clicked the folder containing 207 SW files. This instantly floods Process Explorer with numerous instances (20 to 40) of sldShellExtServer.exe. As I scroll, old process instances complete and disappear, new processes initiate, and all the while they flash red and green (I assume to indicate their CPU load at a given moment). About 50 files are visible at any given time in the file window, so when I scroll new files into view, it causes new instances of sldShellExtServer.exe to be launched. In retrospect, I was quite stupid for not having used Process Explorer much sooner to help diagnose this… I have had that app for years! I should mention I have also tried killing pretty much every non-essential process (in addition to the ones already mentioned) prior to testing, but still no improvement.

So the above explains what’s happening while scrolling, but why is it laggy on my machine and not Paul’s?! I am probably due for a clean reinstall of my OS (Win7), but have been putting that off as I am still considering moving to Win10 - but that is a whole other story unrelated to SW (which is SW2015 btw). I desperately hope something I have mentioned in my posts sparks an idea in Leo and Jon for another potential tweak. I appreciate everyone’s help and communication, but I am not sure what else to try.


#56

What sort of hardware do you both have?

It would be unusual these days to only have a single CPU core but the SW icon handler is obviously doing a significant amount of work to generate the icons; that's all happening on another thread but if there's only one physical CPU it would definitely affect the performance of the UI.


#57

Hello Jon, my setup is:
ASUS P8Z77-V Deluxe MoBo, core i7 3770K overclocked to 4.4gHz, 2x SSD in RAID 0, 16gb RAM, multiple high capacity spinner hard drives, 700watt power supply, and five fans which keep CPU/MoBo under 35C virtually all of the time (I have never seen it go over even 45C, but granted, I don’t play video games). For video, I have an ATI Firepro V4800, an entry-level CAD card, which drives a 55” TV and a 24” monitor, both of which are always on. In addition, I have a CETON 4X tuner card, as I run my TV thru my CAD workstation as well.

Now before you exclaim AH-HA!
I have run live TV while recording 3 other shows, had another media player playing music and rotating wallpaper every 5 minutes in the background, all while surfing the internet AND editing a 100+ part assembly model in SolidWorks… all this simultaneously, and my computer does not even break a sweat. The ONLY thing I have problems with is loading SW files and icons! And yes, when I test SW without all those extra programs and tasks running, it is still laggy.

I am confident it is not hardware related. I did have some install issues the last time I did a clean OS reinstall, so maybe it is related to that. That being said, the same SW delays existed prior to that last reinstall (as well as another computer altogether), so who knows.

Perhaps the 4 or 5 people who posted about this issue (and anyone following this who haven’t posted) can direct their VAR and/or Solidworks Corp to this thread to help illuminate the issue. That way, you don’t have to explain it all from scratch.


#58

What Solidworks is doing here seems quite ridiculous. Launching a separate, single-use exe to generate each tiny 16x16 icon, via a method that appears to involve significant calculations, and not even caching the results so it doesn't need to be re-generated unless the file changes... just seems insane to me. That is so much overhead for icons that should load almost instantly. (Also launching the exes in a way which changes the mouse pointer, while generating icons, is rather incompetent, to be blunt!)

If Solidworks have no interest in improving their shell extension, and you don't want to turn the icons off, the only thing I can think of is that we could write something that acts as a proxy between the shell and their shell extension, and caches the icon results. This would (at least in theory) reduce the overheads in both Opus and Explorer, making it so the extra calculations are only required the first time an icon is requested a file has changed. (I'm assuming most of the files do not change often. If they do then this idea would not work.)

That would be some kind of private consultancy work, though. It's not something we'd do as part of Opus, but something we could do if enough people want to fund the work. Since it's fixing someone else's problem that they show no interest in fixing themselves, and not interesting work that we'd do voluntarily in our spare time, it wouldn't be particularly cheap, but the offer's there.


#59

Personally, I'd try a reinstall, from scratch of just windows and solid works only and see what happens. Your hardware spec is better than mine. I'd say something's seriously messed up with your software setup. Now, as for solid works not generating the icons properly, I can well believe it. Solid works is one of the most bug ridden pieces of shit software its ever been my misfortune to use. But, as our company has invested over 5000 GBP (that is correct, 5 thousand pounds sterling) in a single seat licence, I'm stuck with it. And I really appreciate what you guys have done to get the two to play nicely together.


#60

I am going to do a reinstall of SW as a first step. I have already uninstalled it, and am combing thru the registry as we speak to find any and all stragglers. If that does not work, I may bite the bullet and do a new OS install.

So now it's my turn to be a little offended. As previously stated, I have been using SW for 16 years and I am what most would consider a SW guru. I have used many CAD programs (CATIA, AutoCAD, Rhino 3D, ProE, SolidEdge) over the years, and in my experience SolidWorks crashes far less than any of those. That being said, ALL CAD programs crash and ALL CAD programs can be buggy - SW is certainly no exception. However, no program I have used compares with SolidWorks ability to create complex machined features, its integrated functionality for sheet metal, advanced surfacing, weldments, pipe routing, electrical, structural/flow/motion analysis, animations, etc., and its drawing creation tools/capabilities are unmatched (if a little slow). And finally, the SW interface is vastly superior and easier to work with than any of the aforementioned programs.

Ok… I can admit I may be biased :laughing:!

All right, I will get off my high-horse now. My praise notwithstanding, the icon shell extension does appear to be FUBAR.


#61

Peace brother. Don't be offended by what I think of SW, that's just my opinion of it. It in no way reflects on you. Catia Cadam was the most stable cad software I've ever used. But I think that's comparing apples with oranges as they're not in the same league as each other.

Go for the full wipe and install, you won't regret it. My OS. is never more than 6 months old. Here's a tip, do the wipe, install windows , install solid works and then use CLONEZILLA and make a copy of your system disk. When things go tits up, just use clonezilla to reinstate a pristine setup.


#62

Well a reinstall of SW from scratch did not solve anything… behaves exactly as before.

I decided to research why there are two options for launching SW files: Solidworks.exe OR swShellFileLauncher.exe (the latter being default) . The links below explain why.
blog.gxsc.com/graphics_systems_s ... -2013.html
symsolutions.com/symblog/ite ... e-sessions

The interesting thing is when I change the default launcher to Solidworks.exe, the delay/lag/glitches completely disappear! Unfortunately so do the icons, or rather, instead of unique icons for each file type, the SW Program icon is used for all file types. This is effectively the same as using shexview.exe to turn off SW icons which results in white rectangle icons for all file types. In both cases, the sldShellExtServer.exe process “flood” no longer happens… in fact, the process does not launch at all (confirmed via Process Explorer).

As a workaround, I downloaded a filetype manager and then tried to change the program icon to the standard SW part/assy/drawing icons, but could not make it work. It would either change all filetypes to the new icon I pointed to, or when using different options the filetype manager offered, it would result in an error and no icons were changed.

Perhaps there is something in those links or in the results of my latest experiment that will trigger an epiphany for Leo and Jon, but I won’t hold my breath. I imagine you’re as sick of reading my posts about this as I am of writing them. I think my only option now is a clean OS install, but that won’t be for another month or more. Thanks again for your efforts.


#63

I think Leo has already mentioned this previously, but if not: forum.solidworks.com/thread/48953


#64

As an experiment, i renamed sldshellextserver.exe so it couldn't be called; instant success! Listers populate with Solidworks' generic part, drawing and assembly icons instantaneously, even in thumbnails view. So, thought I'd found a fix. No such luck! When you start Solidworks, it realises it's missing sldshellextserver.exe and reinstalls a new copy :frowning: I'll have to re-read the Solidworks forum posts and see if there is a registry hack that will uncouple sldshellextserver from the system. I can live without its functionality.



#65

I do believe I may have sussed this mother out! As renaming slshellextserver.exe doesn't work, because solidworks reinstalls a copy of it, I've removed all permissions to the file; no-one owns it or has access to it.



Problem has now gone away!

I thought it might cause a few problems when opening files from Solidworks open file dialog box, but no. You still get a thumbnail view in the dialogbox which is really useful.


So, fingers crossed that case is now closed! :smiley:


#66

Just to add, Process explorer confirms that sldshellextserver.exe isn't being loaded any more. And also, Dopus' viewer cab still view a solidworks file fine.


So what that troublesome .exe is doing, god only knows!