Hi Bill [snip code]
Here is the strange part: When using the Intel compiler, and run with the text and xml archive headers commented out, the load method takes about 9.6 seconds. When I uncomment the text and xml headers, the load time almost doubles, to 18.8 seconds or so. I do not see this with gcc.
FWIW, I've had a similar problem with Intel 9.0 on Windows. For a Boost.Statechart performance test where I can vary the number of states in powers of 2 I saw two effects: 1. Size-wise, Intel 9.0 executables were in about the same league as MSVC & GCC executables, as long as the number of states was below 8. With mounting complexity however, Intel 9.0 produced much larger binaries than the competition. 2. Performance-wise, the Intel 9.0 executables were top for small executables but quickly got begind both MSVC and GCC for larger binaries. What I found extremely strange was fact that the performance degradation seemed to depend only on the size of the executable and not on how much of the code is actually executed during a test. Specifically, a state machine executes considerably faster when compiled into a separate executable than exactly the same state machine when compiled into an executable that also contains other state machines!!! I partly "solved" the problem by compiling the Intel performance tests into as many executables as possible. Since Intel is not a platform I use for real work, I've never reported this problem. BTW, the offending code is publicly available. If you want to use it to report the problem, let me know and I'll send you some pointers. Regards, -- Andreas Huber When replying by private email, please remove the words spam and trap from the address shown in the header.