Hi Mike,
OK, here are some thoughts on things that might speed up mach's screen set loading. I want to state very clearly up front that these are ideas and NOT things I have tried and tested. If you choose to explore these ideas, I'd be interested in the results of the experiment - but I can't be responsible for any time and $ expended along the way. I also can't (and won't) be responsible for PC config problems that could result.
OK, with that understanding, here are some thoughts:
1) mach gets fixed
This is the real, correct and preferred way to fix the load speed. Alas, the only person that could do this is Brian at Artsoft, but he's had this on the todo list for over 2 years and still has not gotten around to it. So I'm not holding my breath on this approach. The load problems are more that just time it takes - there are other mach bugs in this area (see the MSM release notes)
The rest of these are ideas based on what I think mach is doing based on info gathered from Brian and Steve -
A) I don't believe that multiple processor cores or even more processors will help here. Mach is basically a single thread application when loading and can't make use of any other cores. So paying for more cores will not help.
B) raw processor clock speed for the single cpu being used could help - but this would only be true if the ultimate bottle neck is cpu power.
Since I do see different load times on different processors, the load time is dependent on CPU speed, but I suspect that the real problem is a PC's IO speed.
For context one has to understand how mach set files are structured:
The set file is a set of sequential records that Mach processes one by one. any record that has a bit map reference causes the bit map to get created in memory - in case mach ever needs to display it. This is the first major problem: mach renders everything that might be used on first load and has no concept of only loading up what is needed, as it is needed.
The 2nd problem is that if a single bit map is used multiple times, mach reads and loads it multiple times. Neither the set file structure nor mach are aware of the concept of common information.
3rd, the 1024 screens load quickly as they essentially have no bitmaps - they just use the default buttons (which are a constant single color background) and no 1024 pages have background bitmaps. The result is faster load and the cost is, well, the (IMHO ugly) stock screen set appearance.
This means that the loading of a bitmap based set file, causes mach to access many different small files, each of which mach loads into memory.
c) turning off antivirus programs can significantly speed this up as the AV processing takes a lot of time for each file open operation. I have seen this effect make a big difference. Of course turning off AV can have other negative consequences.... that may be Ok for a PC dedicated to only machine control, but may not be a good idea for a general PC connectd to the net....
The following will not likely help you as you said you are already not running AV on the control PC:
Another area of experimentation would be to see what impact using different Av programs has - they vary widely in terms of how much they load up a PC. But this is PC config experimentation and not something that I would recommend for casual PC users (multiple AV program can hard crash a PC)
d) All this file access probably means that the load time could be limited by the IO performance of the PC, particularly wrt to HDD access etc.
I've thought about creating a RAM disk and moving the mach and MSM install to the ram disk. I'd be interested in knowing what impact that might have.
Another idea would be to see what the difference is between a common rotating HDD and an SSD (solid state disk).
However, again this is in the realm of PC optimization. The complex interactions between RAM disk and Windows caching mechanisms is a topic that I can't get into as a MSM support side effect.
In general, CVI can't support a PC optimization experiment as part of MSM support (it's just too likely to create PC problems ).
If you do want to experiment, I'd like to know what you learn, but you will have to be on your own for the experiments.
Dave